我使用spring-boot和Docker开发应用程序。出于安全原因,我不想再使用application.properties并仅使用environnement变量。
如果您有最佳实践,我将不胜感激。
这是我的docker-compose.yml
的snipetversion: "2.1"
services:
app_users:
image: images/app_users
container_name: app_user_ctn
build:
context: ../..
dockerfile: docker/dev/Dockerfile
ports:
- "30333:8080"
external_links:
- mysql
environment:
SPRING_DATASOURCE_URL: jdbc:mysql://mysql/myDB?autoReconnect=true
SPRING_DATASOURCE_USERNAME: mysqluser1
SPRING_DATASOURCE_PASSWORD: mysqlpwsword
SPRING_DATASOURCE_DRIVER_CLASS_NAME: com.mysql.jdbc.Driver
LDAP_PASSWORD: ldapPswd
LDAP_URLS: ldap://myServer:389
LDAP_USERNAME: cn=admin,dc=com,dc=expl
当我向ldap发出请求时,我得到NulPointerException,因为ldap环境变量没有初始化。
当我使用application.yml时,它可以工作。
...
spring:
ldap:
password: ldapPswd
urls: ldap://myServer:389
username: cn=admin,dc=com,dc=expl
....
你有什么想法吗?
祝你好运