在docker镜像中传递docker运行时环境变量

weixin_38054840 2019-09-12 01:00:15
这是我的码头图片.我想覆盖下面设置的默认环境变量,从最后提到的docker run命令中传递的内容 FROM ubuntu:16.04 ADD http://www.nic.funet.fi/pub/mirrors/apache.org/tomcat/tomcat-8/v8.0.48/bin/apache-tomcat-8.0.48.tar.gz /usr/local/ RUN cd /usr/local && tar -zxvf apache-tomcat-8.0.48.tar.gz && rm apache-tomcat-8.0.48.tar.gz RUN mv /usr/local/apache-tomcat-8.0.48 /usr/local/tomcat RUN rm -rf /usr/local/tomcat/webapps/* ENV JAVA_HOME /usr/lib/jvm/java-8-openjdk-amd64 ENV CATALINA_HOME /usr/local/tomcat ENV CATALINA_BASE /usr/local/tomcat ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin ENV dummy_url defaulturl ENV database databasedefault COPY my.war /usr/local/tomcat/webapps/ RUN echo >> /usr/local/tomcat/conf/test.properties RUN echo dummy_url =$dummy_url >> /usr/local/tomcat/conf/test.properties RUN echo database =$database >> /usr/local/tomcat/conf/test.properties ENTRYPOINT ["catalina.sh", "run"] 在本地运行: docker run -p 8080:8080 -e dummy_url=http:google.com -e database=jdbc://mysql allimages/myimage:latest 在我添加它们的文件中,dummy_url和数据库似乎没有被覆盖 – test.properties.任何想法将不胜感激.
...全文
140 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
weixin_38085230 2019-09-12
  • 打赏
  • 举报
回复
I want to override the default environment variables being set below from whatever is passed in the docker run command mentioned in the end 这意味着在将映像作为容器(docker run)运行时覆盖映像文件(/usr/local/tomcat/conf/test.properties),而不是构建映像(docker build及其--build-args option及其ARG Dockerfile条目). 这意味着您在本地创建一个脚本文件: >修改/usr/local/tomcat/conf/test.properties>调用catalina.sh运行$@(另请参阅“Store Bash script arguments $@ in a variable”中的“Store Bash script arguments $@ in a variable”) 那是: myscript.sh #!/bin/sh echo dummy_url=$dummy_url >> /usr/local/tomcat/conf/test.properties echo database=$database >> /usr/local/tomcat/conf/test.properties args=("$@") catalina.sh run "${args[@]}" 你会修改你的Dockerfile to COPY那个脚本并调用它: COPY myscript.sh /usr/local/ ... ENTRYPOINT ["/usr/local/myscript.sh"] 然后,只有这样,docker run的-e选项才有效.

476

社区成员

发帖
与我相关
我的任务
社区描述
其他技术讨论专区
其他 技术论坛(原bbs)
社区管理员
  • 其他技术讨论专区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧