我有一个 springboot 应用程序,它使用 postgresql 数据库和 mongoDB 数据库,我已经能够正确配置它们,但现在当我想对我的应用程序进行 dockerize 以便稍后将其部署到 Kubernetes 集群上时,我完全无能为力。大多数 youtube 教程和文章都是关于如何 dockerize 简单的 springboot 应用程序或仅使用一个数据库的 springboot 应用程序,因此任何有关如何继续 dockerize 我的应用程序的输入将非常感激!
编辑:
我正在关注这个教程 -https://www.section.io/engineering-education/running-a-multi-container-springboot-postgresql-application-with-docker-compose/ https://www.section.io/engineering-education/running-a-multi-container-springboot-postgresql-application-with-docker-compose/
在 docker-compose.yml 文件中 -
version: '3.1'
services:
API:
image: 'blog-api-docker.jar'
ports:
- "8080:8080"
depends_on:
PostgreSQL:
condition: service_healthy
environment:
- SPRING_DATASOURCE_URL=jdbc:postgresql://PostgreSQL:5432/postgres
- SPRING_DATASOURCE_USERNAME=postgres
- SPRING_DATASOURCE_PASSWORD=password
- SPRING_JPA_HIBERNATE_DDL_AUTO=update
PostgreSQL:
image: postgres
ports:
- "5432:5432"
environment:
- POSTGRES_PASSWORD=password
- POSTGRES_USER=postgres
- POSTGRES_DB=postgres
healthcheck:
test: ["CMD-SHELL", "pg_isready -U postgres"]
interval: 10s
timeout: 5s
retries: 5
仅定义了一个 postgreSQL 数据源,在我的项目中,它具有教程中给出的类似 postgreSQL 数据源,我还使用在 atlas 上运行的 mongoDB 数据库。
我还包括我的 application.properties 文件供您参考-
spring.ds-psql.datasource.jdbcUrl=jdbc:postgresql://localhost:5432/devicestatspsql
spring.ds-psql.datasource.username=
spring.ds-psql.datasource.password=
spring.data.mongodb.users-mongo-atlas.uri=*mongodb database url here*
spring.jpa.generate-ddl=true
spring.jpa.show-sql=true
所以我只需要知道 docker-compose.yml 文件中需要进行哪些更改才能在 docker 映像中容纳此 mongodb 数据库