在我的微服务中,我连接到MySQL数据库,但我决定使用Docker容器连接到PostgreSQL。
#Postgres Configuration
postgres-order:
container_name: postgres-order
image: postgres
environment:
POSTGRES_DB: order-service
POSTGRES_USER: matvey
POSTGRES_PASSWORD: matvey
PGDATA: /data/postgres
volumes:
- ./volumes/postgres-order:/data/postgres
expose:
- "5431"
ports:
- "5431:5431"
command: -p 5431
restart: unless-stopped
这是我的服务docker-compose:
#Order Service
order-service:
container_name: order-service
image: zaxarleningod/order-service
pull_policy: always
environment:
- SPRING_PROFILES_ACTIVE=docker
- SPRING_DATASOURCE_URL=jdbc:postgresql://postgres-order:5431/order-service
depends_on:
- postgres-order
- broker
- discovery-server
- api-gateway
这是属性中的配置:
spring.datasource.url=jdbc:postgresql://postgres-order:5431/order-service
spring.datasource.driver-class-name=org.postgresql.Driver
spring.datasource.username=matvey
spring.datasource.password=matvey
之后,我运行docker组合,并在订单服务容器中得到错误:
org.postgresql.util.PSQLException: Connection to postgres-order:5431 refused. Check that the hostname and port are correct and that the postmaster is accepting TCP/IP connections.
这是奇怪的,但我看到主机名和端口是正确的,哪里可能是一个问题?
1条答案
按热度按时间gr8qqesn1#
我觉得你的选择:
command: -p 5431
不正确,请尝试注解或删除此行,然后重新启动您的docker-compose