Docker Compose Tomcat无法连接到Postgresql

时间:2019-05-10 16:50:36

标签: java postgresql docker tomcat

我有2个容器。其中之一是postgresql,其中之一是tomcat。 我尝试启动应用程序,但始终收到o.h.e.jdbc.spi.SqlExceptionHelper-连接被拒绝。检查主机名和端口是否正确以及邮局主管正在接受TCP / IP连接。错误。请帮助我,我没有太多时间。 最好的问候。

我尝试了不同类型的docker compos。但是我总是遇到同样的错误。

16:48:09.557 [localhost-startStop-1] ERROR o.h.e.jdbc.spi.SqlExceptionHelper - Connection refused. Check that the hostname and port are correct and that the postmaster is accepting TCP/IP connections.

我的连接网址

db.user=admin
db.password=123456
db.url=jdbc:postgresql://moneytransferdb:5410/moneytransfer

我的docker撰写yml

version: '3'

services:
  moneytransferdb:
   image: postgres
   restart: always
   ports:
     - "5410:5432"
   volumes:
     - mydatavol:/var/lib/postgresql/data
   environment:
     POSTGRES_USER: admin
     POSTGRES_PASSWORD: 123456
     POSTGRES_DB: moneytransfer
   container_name: moneytransfer
   networks:
     - main
  tomcat:
    image: tomcat
    ports:
     - "8080:8080"
    volumes:
     - ../tcmb/tcmb-service.war:/usr/local/tomcat/webapps/tcmb.war
    container_name: tcmb
    depends_on:
     - moneytransferdb
    links:
     - moneytransferdb
    restart: always
    networks:
     - main
volumes:
  mydatavol: {}
networks:
  main:

1 个答案:

答案 0 :(得分:0)

将连接设置更改为此:

db.user=admin
db.password=123456
db.url=jdbc:postgresql://moneytransferdb:5432/moneytransfer

端口映射使容器端口可用于主机,但未被其他容器使用。对于他们来说,只有集装箱港口很重要。