我有一个带有 3 个服务器(1 个管理器和 2 个工作人员)的 Docker Swarm 集群设置。
我使用以下命令启动了 Postgresql 服务:
docker service create --name postgresql \
--mount src=pg_data,dst=/var/lib/postgresql/data/pgdata \
-p 6542:5432 \
-e POSTGRES_USER="user" \
-e POSTGRES_DB="db" \
-e POSTGRES_PASSWORD="pass" \
-e PGDATA=/var/lib/postgresql/data/pgdata \
--constraint 'node.role == manager' \
postgres
我之前还创建了数据卷:
docker volume create pg_data
现在,我有另一个要启动的服务,它基本上是一个 Java 应用程序,我捆绑到一个 Docker 映像中,我想将它连接到 postgresql 服务。我为 url 尝试了以下组合:
jdbc:postgresql://172.18.0.1:5432/db (docker_gwbridge)
jdbc:postgresql://172.17.0.1:5432/db (docker0)
jdbc:postgresql://localhost:5432/db
jdbc:postgresql://postgresql:5432/db
知道什么可以工作吗?