如何在docker中动态配置应用程序属性文件
我有一个包含application.properties文件的jar文件。 我们可以在运行docker映像时配置IP地址、端口号、用户名和密码吗 属性文件位置 App/bin/config/application.properties如何在docker中动态配置应用程序属性文件,docker,dockerfile,devops,12factor,Docker,Dockerfile,Devops,12factor,我有一个包含application.properties文件的jar文件。 我们可以在运行docker映像时配置IP地址、端口号、用户名和密码吗 属性文件位置 App/bin/config/application.properties driverClassName = org.postgresql.Driver url = jdbc:postgresql://localhost:5432/sakila username = root password = root 以下是applicatio
driverClassName = org.postgresql.Driver
url = jdbc:postgresql://localhost:5432/sakila
username = root
password = root
以下是application.properties
driverClassName = org.postgresql.Driver
url = jdbc:postgresql://localhost:5432/sakila
username = root
password = root
入口点是秘密 您有两种解决方案:
- 设计映像以通过环境变量接收这些参数,并让入口点将它们注入
App/bin/config/application.properties
- 设计图像以侦听目录。如果此目录包含
文件,则入口点将收集这些文件并将它们合并到一个文件中,并将内容附加到*.properties
App/bin/config/application.properties
From java:x
COPY jar ...
COPY myentrypoint /
ENTRYPOINT ["bash", "/myentrypoint"]
但不是相同的入口点(myentrypoint)
解决方案A-入口点:
要从此解决方案创建容器,请执行以下操作:
docker run -it -e DB_URL=jdbc:postgresql://localhost:5432/sakila myimage
docker run -it -v ./folder-has-props-files:/etc/java/props.d myimage
解决方案B-入口点:
要从此解决方案创建容器,请执行以下操作:
docker run -it -e DB_URL=jdbc:postgresql://localhost:5432/sakila myimage
docker run -it -v ./folder-has-props-files:/etc/java/props.d myimage
您好,欢迎来到SO,您可以提供一个docker映像和命令文件,用于构建和创建映像吗?