我创建了一个在我的机器上运行完美的弹簧启动应用程序。我用Intellij运行它。我在src / main / resources目录中使用包含此类数据的application.yml文件:
spring:
main:
banner-mode: 'off'
jpa:
database: MYSQL
properties:
hibernate:
ddl-auto: validate
format_sql: true
show_sql: true
我安静了一些属性,所以这只是属性文件的一小部分。
现在我想用docker compose部署spring boot。我安装了docker和docker-compose,这就是我的docker-compose.yml文件的样子:
version: '2'
services:
backend:
image: backend:latest
ports:
- "8080:8080"
env_file:
- backend.env
我的backend.env文件看起来几乎像我的项目中的application.yml但是有不同的值,如不同的mysql url等
现在我用
开始后端docker-compose up backend
我收到一条消息,表示项目仍在尝试连接到项目application.yml中指定的数据库。简而言之,docker compose并不会覆盖传递给我的spring boot项目的属性。
如果我的方法是正确的,我会徘徊。在docker compose中部署的Spring启动项目的最佳实践是什么?如何为每个环境配置不同的环境文件?
由于