postgresql – Docker – 如何在postgres容器中运行psql命令?

前端之家收集整理的这篇文章主要介绍了postgresql – Docker – 如何在postgres容器中运行psql命令?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想在postgres图像中使用psql,以便在数据库上运行一些查询
但不幸的是,当我附加到postgres容器时,我得到了错误,找不到psql命令…

对我来说,如何在容器中运行postgre SQL查询或命令是一个谜。

如何在postgres容器中运行psql命令? (我是Docker世界的新人)

我使用Ubuntu作为主机,我没有在主机上安装postgres,而是使用postgres容器。

@H_301_8@docker-compose ps Name Command State Ports --------------------------------------------------------------------------------------------- yiialkalmi_app_1 /bin/bash Exit 0 yiialkalmi_Nginx_1 Nginx -g daemon off; Up 443/tcp,0.0.0.0:80->80/tcp yiialkalmi_PHP_1 PHP-fpm Up 9000/tcp yiialkalmi_postgres_1 /docker-entrypoint.sh postgres Up 5432/tcp yiialkalmi_redis_1 docker-entrypoint.sh redis ... Up 6379/tcp

这里的容器:

@H_301_8@docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 315567db2dff yiialkalmi_Nginx "Nginx -g 'daemon off" 18 hours ago Up 3 hours 0.0.0.0:80->80/tcp,443/tcp yiialkalmi_Nginx_1 53577722df71 yiialkalmi_PHP "PHP-fpm" 18 hours ago Up 3 hours 9000/tcp yiialkalmi_PHP_1 40e39bd0329a postgres:latest "/docker-entrypoint.s" 18 hours ago Up 3 hours 5432/tcp yiialkalmi_postgres_1 5cc47477b72d redis:latest "docker-entrypoint.sh" 19 hours ago Up 3 hours 6379/tcp yiialkalmi_redis_1

这是我的docker-compose.yml:

@H_301_8@app: image: ubuntu:16.04 volumes: - .:/var/www/html Nginx: build: ./docker/Nginx/ ports: - 80:80 links: - PHP volumes_from: - app volumes: - ./docker/Nginx/conf.d:/etc/Nginx/conf.d PHP: build: ./docker/PHP/ expose: - 9000 links: - postgres - redis volumes_from: - app postgres: image: postgres:latest volumes: - /var/lib/postgres environment: POSTGRES_DB: project POSTGRES_USER: project POSTGRES_PASSWORD: project redis: image: redis:latest expose: - 6379
@H_301_8@docker exec -it yiialkalmi_postgres_1 psql -U project -W project project

一些解释

> docker exec -it
用于向正在运行的容器运行命令的命令。它标志打开一个交互式tty。基本上它会导致连接到终端。如果你想打开bash终端,你可以这样做

docker exec -it yiialkalmi_postgres_1 bash

> yiialkalmi_postgres_1
容器名称(您可以使用容器ID,在您的情况下将是40e39bd0329a)
> psql -U项目-W项目
执行到正在运行的容器的命令
> U用户
> W密码
>投影要连接的数据库

这些是你在这里指定的

@H_301_8@environment: POSTGRES_DB: project POSTGRES_USER: project POSTGRES_PASSWORD: project
原文链接:https://www.f2er.com/postgresql/192884.html

猜你在找的Postgre SQL相关文章