我尝试使用pgAdmin连接到我的docker镜像中的postgres容器。但我似乎无法将其连接起来。这是我的docker-compose.yml:
version: '2'
services:
web:
build: .
command: bundle exec rails s -p 3000 -b '0.0.0.0'
volumes:
- .:/livingrecipe
ports:
- '3000:3000'
env_file:
- .env
links:
- postgres
- elasticsearch
postgres:
image: postgres
elasticsearch:
image: elasticsearch
我已经四处搜索,它看起来像localhost:5432除非在VM内部,否则无法工作,但我无法找到VM IP。在端口下查看Kitematic,这就是它所显示的内容:
我已经尝试在docker-compose.yml文件中指定端口,但后来我收到一个恼人的错误,说端口已经分配,并且无法弄清楚我的生活是什么使用这些端口所以不确定是什么那里。任何帮助指示我正确的方向要么让pgAdmin工作,要么只是通过gui像pgAdmin
来访问数据库的另一种方式答案 0 :(得分:3)
你可以在你的shell中做:
docker ps
这将为您提供机器上的图像列表。选择postgres图像的容器ID并输入shell:
docker inspect <container_id>
这将为您提供包含图片信息的哈希值。找到IPAddress密钥。在pgadmin中使用IP和您之前指定的端口(我猜5432)。