我正在使用 git deploy 在 Heroku 上托管我的 Spring Boot 应用程序。我有一个公共 git 存储库并将我的 application.properties 文件添加到 .gitignore,因为它包含敏感的详细信息,例如 api 密钥和数据库凭据。
处理这种情况的最佳方法是什么,我是否可以自己将单个 application.properties 文件直接上传到 Heroku?我不想使用 Heroku 配置变量,因为我宁愿保持平台独立。
我正在使用 git deploy 在 Heroku 上托管我的 Spring Boot 应用程序。我有一个公共 git 存储库并将我的 application.properties 文件添加到 .gitignore,因为它包含敏感的详细信息,例如 api 密钥和数据库凭据。
处理这种情况的最佳方法是什么,我是否可以自己将单个 application.properties 文件直接上传到 Heroku?我不想使用 Heroku 配置变量,因为我宁愿保持平台独立。
我建议恢复您的application.properties
文件并将您的敏感数据移动到环境变量(您可以在他们的官方文档中阅读更多信息)
因此,您的属性文件可能如下所示:
datasource.username = ${DB_USER_NAME}
datasource.password = ${DB_USER_PASSWORD}
此外,您可以将配置拆分为多个配置文件,例如dev
,test
或prod
,以避免在开发或测试应用程序时设置这些变量(您可以在此处阅读更多信息)。
然后,您可以在配置文件上使用例如h2
内存数据库,dev
在生产上使用另一个数据库。
然后,您application-dev.properties
将看到:
datasource.username = sa
datasource.password = not_so_secret_password
并且,application-prod.properties
:
datasource.username = ${DB_USER_NAME}
datasource.password = ${DB_USER_PASSWORD}