我正在尝试使用一个码头容器运行竹服务器,并将其连接到正在运行在另一个容器上的postgres db。首先,我运行postgres,并使用用户postgres和密码postgres创建一个名为竹的空数据库。
我运行这个推荐从https://hub.docker.com/r/atlassian/bamboo运行竹服务器
$> docker volume create --name bambooVolume
$> docker run -v bambooVolume:/var/atlassian/application-data/bamboo --name="bamboo" -d -p 8085:8085 -p 54663:54663 atlassian/bamboo然后,我打开localhost:8085,生成一个许可证,并达到我看到的错误。
访问数据库的错误: org.postgresql.util.PSQLException:到本地主机的连接:5432拒绝。检查主机名和端口是否正确,以及邮局管理员是否接受TCP/IP连接。。

有什么问题吗?
解决方案:
使用此dokcer编写的yaml:
version: '2'
services:
bamboo:
image: atlassian/bamboo
container_name: bamboo
ports:
- '54663:5436'
- '8085:8085'
networks:
- bamboonet
volumes:
- bamboo-data:/var/atlassian/application-data/bamboo
hostname: bamboo
environment:
CATALINA_OPTS: -Xms256m -Xmx1g
BAMBOO_PROXY_NAME:
BAMBOO_PROXY_PORT:
BAMBOO_PROXY_SCHEME:
BAMBOO_DELAYED_START:
labels:
com.blacklabelops.description: "Atlassian Bamboo"
com.blacklabelops.service: "bamboo"
db-bamboo:
image: postgres
container_name: postgres
hostname: postgres
networks:
- bamboonet
volumes:
- bamboo-data-db:/var/lib/postgresql/data
ports:
- '5432:5432'
environment:
POSTGRES_PASSWORD: password
POSTGRES_USER: bamboo
POSTGRES_DB: bamboo
POSTGRES_ENCODING: UTF8
POSTGRES_COLLATE: C
POSTGRES_COLLATE_TYPE: C
PGDATA: /var/lib/postgresql/data/pgdata
labels:
com.blacklabelops.description: "PostgreSQL Database Server"
com.blacklabelops.service: "postgresql"
volumes:
bamboo-data:
external: false
bamboo-data-db:
external: false
networks:
bamboonet:
driver: bridge发布于 2022-04-10 03:45:41
如果您不设置您的停靠程序的网络,则将使用bridge模式作为默认模式。
我认为问题在于,您可能会使用{containerName}:5432而不是JDBC连接字符串中的localhost:5432,因为localhost意味着您的网站容器而不是真正的计算机,因此您无法通过它连接到DB。
jdbc:postgresql://bamboo-pg-db-container:5432/bamboohttps://stackoverflow.com/questions/71813585
复制相似问题