使用docker撰写Spring引导的属性撰写

时间:2017-07-28 14:40:03

标签: spring-boot docker-compose

我创建了一个在我的机器上运行完美的弹簧启动应用程序。我用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启动项目的最佳实践是什么?如何为每个环境配置不同的环境文件?

由于

0 个答案:

没有答案