我正在使用docker-compose来容器化我的rest api。一个服务用于我的spring应用程序,另一个用于数据库。问题是spring boot api尝试通过使用localhost默认连接到数据库,但由于它是容器,它创建了一个错误(连接到localhost:5432被拒绝。检查主机名和端口)。容器停止工作,因为应用程序不工作。如何告诉我的spring boot api尝试连接到数据库容器。
version: "3"
services:
app_service:
container_name: app_service
build: .
ports:
- "8080:8080"
depends_on:
- postgresql
networks:
- net
postgresql:
image: postgres:15.0
container_name: db
ports:
- "5432:5432"
restart: unless-stopped
environment:
POSTGRES_PASSWORD : Access/fedora/6
POSTGRES_DB : postgres
volumes:
- psql:/var/lib/postgres/psql
networks:
- net
volumes:
psql:
networks:
net:
cloud:
aws:
credentials:
secret-key: 'qdfqdfqsdfqsdqsdfqsdfqs'
access-key: 'qfqsdfqserfqegdrhfjkgkh'
region:
static: eu-west-3
stack:
auto: 'false'
spring:
jpa:
properties:
hibernate:
dialect: org.hibernate.dialect.PostgreSQLDialect
format_sql: 'true'
show-sql: 'true'
hibernate:
ddl-auto: update
servlet:
multipart:
max-file-size: 5MB
enabled: 'true'
max-request-size: 10MB
file-size-threshold: 2MB
datasource:
hikari:
jdbc-url: jdbc:postgresql://db:5432/postgres
password: Access/fedora/6
application:
bucket:
name: moood-app
我试着搜索是否有一个我可以使用的spring项目的图像,但是我没有找到一个可以帮助我的图像。我试着找到一种方法来为spring容器设置默认的jdbc url,但是没有找到。
我希望找到一种方法来设置容器之间的连接
1条答案
按热度按时间ecbunoof1#
你可以通过
environment
来传递这个值。