我目前正在试用我的应用程序和db容器之间的对接链接。我已经检查了我的应用程序容器和环境变量是自动设置当我链接容器在一起。
我想要做的是将我的配置文件打包到一个jar文件中,接收环境变量并将所需的值设置为它。有什么建议或帮助吗?

这就是我如何在jar文件中创建一个配置文件来连接到MySQL
database { url="jdbc:mysql://${MYSQL_PORT_3306_TCP_ADDR}:${MYSQL_PORT_3306_TCP_PORT}/mydb" driver="com.mysql.jdbc.Driver"}发布于 2015-01-26 06:08:19
更新jar中的配置文件可能会非常过分。它认为你有几个选择
编辑:添加示例
您可以将这种启动脚本保存在docker映像上,在启动实际程序之前动态创建配置。
#!/bin/bash
# some default values for testing even without links to other container
MYSQL_PORT_3306_TCP_ADDR=${MYSQL_PORT_3306_TCP_ADDR:-127.0.0.1}
MYSQL_PORT_3306_TCP_PORT=${MYSQL_PORT_3306_TCP_PORT:-3306}
cat << EOF > /opt/yourprogram/dbconfig.conf
database { url="jdbc:mysql://${MYSQL_PORT_3306_TCP_ADDR}:${MYSQL_PORT_3306_TCP_PORT}/mydb" driver="com.mysql.jdbc.Driver"
}
EOF
scala -classpath /opt/yourprogram YourProgram发布于 2015-01-27 04:26:06
我所做的是在我的目录/tmp/restcore-1.0-快照/bin中写入sh文件,如下所示:
#!/bin/bash echo "database{url="jdbc:mysql://"${MYSQL_PORT_3306_TCP_ADDR}":"${MYSQL_PORT_3306_TCP_PORT}"/mydb" driver="com.mysql.jdbc.Driver" }" > myconf.conf
jar uf /tmp/restcore-SNAPSHOT/lib/com.organization.restcore-1.0-SNAPSHOT.jar /tmp/restcore-1.0-SNAPSHOT/bin/myconf.conf在构建了Dockerfile并在CMD中运行sh文件之后,我使用cat myconf.conf检查配置文件,我将能够看到环境设置。
https://stackoverflow.com/questions/28144710
复制相似问题