首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >安装竹试用docker和连接localhost上postgres数据库的问题

安装竹试用docker和连接localhost上postgres数据库的问题
EN

Stack Overflow用户
提问于 2022-04-10 03:35:12
回答 1查看 252关注 0票数 1

我正在尝试使用一个码头容器运行竹服务器,并将其连接到正在运行在另一个容器上的postgres db。首先,我运行postgres,并使用用户postgres和密码postgres创建一个名为竹的空数据库。

我运行这个推荐从https://hub.docker.com/r/atlassian/bamboo运行竹服务器

代码语言:javascript
复制
$> 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:

代码语言:javascript
复制
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
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-04-10 03:45:41

如果您不设置您的停靠程序的网络,则将使用bridge模式作为默认模式。

我认为问题在于,您可能会使用{containerName}:5432而不是JDBC连接字符串中的localhost:5432,因为localhost意味着您的网站容器而不是真正的计算机,因此您无法通过它连接到DB。

代码语言:javascript
复制
jdbc:postgresql://bamboo-pg-db-container:5432/bamboo
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71813585

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档