【发布时间】:2019-11-12 12:07:34
【问题描述】:
我有以下定义的 docker-compose 文件和 postgres 图像,我想从我的 PC 的 hosting 机器运行并连接到它,但我一直收到 Connection Refused localhost:5432 .我意识到容器必须在主机网络驱动程序上运行,但网络模式并不能解决这个问题。我做错了什么?
我在Windows 10 with Docker for Desktop 上使用docker-compose -f [file] up 运行它
version: '3.7'
services:
database:
image: postgres:10.6
restart: always
ports:
- "5432:5432"
environment:
- POSTGRES_USER=postgres
- POSTGRES_PASSWORD=p0stgr@s
- POSTGRES_DB=eagle_eye_local
network_mode: host
当我使用以下命令运行同一个容器时,它可以工作:
docker container run --name postgres10.6 -e POSTGRES_PASSWORD=p0stgr@s -e POSTGRES_USER=postgres -e POSTGRES_DB=eagle_eye_local -p 5432:5432 postgres:10.6
【问题讨论】:
-
你说的是 docker for Mac 还是 docker for windows?
标签: postgresql docker networking docker-compose docker-desktop