首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在docker下添加psql显示未知错误

在docker下添加psql显示未知错误
EN

Stack Overflow用户
提问于 2019-11-04 15:46:16
回答 1查看 1.4K关注 0票数 0

我制作了docker /postgres/ phppgadmin,我需要将psql添加到我的项目中来上传我的sql转储。我找到了这个https://hub.docker.com/r/softwareplant/psql并将它添加到我的项目中,但是运行build命令我得到了错误:

代码语言:javascript
运行
复制
docker-compose up -d --build
... 
Sccessfully built 3b0700d7bed8
Successfully tagged lprodsdocker_web:latest
Pulling psql (softwareplant/psql:latest)...
ERROR: manifest for softwareplant/psql:latest not found: manifest unknown: manifest unknown

我的船坞

代码语言:javascript
运行
复制
version: '3'

services:

    web:
        build:
            context: ./web           # directory of web/Dockerfile.yml
            dockerfile: Dockerfile.yml

        environment:
            - APACHE_RUN_USER=#1000
            # - APACHE_RUN_USER=www-data

        container_name: lprods_web

        volumes:
            - ${APP_PATH_HOST}:${APP_PTH_CONTAINER}
        ports:
            - 8086:80
        working_dir: ${APP_PTH_CONTAINER}



    db:
        image: postgres:9.6.10-alpine
        container_name: lprods_db
        ports:
            - '5433:5432'
        restart: always
        environment: 
            POSTGRES_USER: 'postgres'
            POSTGRES_PASSWORD: '1'
            POSTGRES_DB: 'wprods'
        volumes:
            - ./init:/docker-entrypoint-initdb.d/


    phppgadmin:
        image: dockage/phppgadmin:latest
        environment:
            - PHP_PG_ADMIN_SERVER_HOST=db
            - PHP_PG_ADMIN_SERVER_PORT=5432
            - PHP_PG_ADMIN_SERVER_DEFAULT_DB=postgres
        container_name: lprods_phppgadmin

        restart: always
        ports:
            - 8087:80
            - "443:443"
        links:
            - db

    psql:
        image: softwareplant/psql
        environment:
            - PHP_PG_ADMIN_SERVER_HOST=db
            - PHP_PG_ADMIN_SERVER_PORT=5432
            - PHP_PG_ADMIN_SERVER_DEFAULT_DB=postgres
        container_name: lprods_phppgadmin

        restart: always
        ports:
            - 8087:80
            - "443:443"
        links:
            - db

    composer:
        image: composer:1.6
        container_name: lprods_composer
        volumes:
            - ${APP_PATH_HOST}:${APP_PTH_CONTAINER}
        working_dir: ${APP_PTH_CONTAINER}
        command: composer install  --ignore-platform-reqs

哪条路是对的?在https://hub.docker.com上有这样的图像..。是无效的吗?你能建议其他的决定吗?

修改后的 : --我试一试

代码语言:javascript
运行
复制
https://hub.docker.com/r/governmentpaas/psql
Provides psql Postgres client. 

description seems like what I need : to upload dump into postgres db
In docker-compose.yml I added item :

    psql:
        image: governmentpaas/psql
        environment:
            - PHP_PG_ADMIN_SERVER_HOST=db
            - PHP_PG_ADMIN_SERVER_PORT=5432
            - PHP_PG_ADMIN_SERVER_DEFAULT_DB=postgres
        container_name: lprods_psql

        restart: always
        ports:
            - "8088:80"
            - "444:444"
        links:
            - db

它已经安装好了,我在托管操作系统中看到了这个容器:

代码语言:javascript
运行
复制
lprods_docker$ docker ps
CONTAINER ID        IMAGE                       COMMAND                  CREATED             STATUS                          PORTS                                        NAMES
a3342c0b0df4        dockage/phppgadmin:latest   "/sbin/entrypoint ap"   16 minutes ago      Up 16 minutes                   0.0.0.0:443->443/tcp, 0.0.0.0:8087->80/tcp   lprods_phppgadmin
3ffa2823257a        governmentpaas/psql         "/bin/sh"                16 minutes ago      Restarting (0) 42 seconds ago                                                lprods_psql
7071eaf067d6        lprodsdocker_web            "docker-php-entrypoi"   17 minutes ago      Up 16 minutes                   0.0.0.0:8086->80/tcp                         lprods_web
4372e269daf8        postgres:9.6.10-alpine      "docker-entrypoint.s"   17 minutes ago      Up 16 minutes                   0.0.0.0:5433->5432/tcp                       lprods_db

但是,输入bash容器,没有psql命令,发现:

代码语言:javascript
运行
复制
# uname -a
Linux 7071eaf067d6 4.15.0-66-generic #75-Ubuntu SMP Tue Oct 1 05:24:09 UTC 2019 x86_64 GNU/Linux
root@7071eaf067d6:/var/www/lprods_docker_root# whereis psql

# psql -v
bash: psql: command not found

我需要图像吗?如果是,如何使用?

EN

回答 1

Stack Overflow用户

发布于 2020-03-06 16:57:16

您必须指定图像的标记,例如:

代码语言:javascript
运行
复制
version: '3'

services:

[...]

    psql:
        image: softwareplant/psql:dev-jira7

[...]
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58696754

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档