我想知道ENTRYPOINT在遗产发生时会对来自Dockerfiles 的指令作出反应:
比方说,我有一个名为:jenkins的图像
FROM java:8-jdk
RUN ...
ENTRYPOINT ["/bin/tini", "--", "/usr/local/bin/jenkins.sh"]
Run Code Online (Sandbox Code Playgroud)
通过运行此映像,该ENTRYPOINT指令将按预期启动并安装应用程序
现在假设我想用新的Dockerfile 扩展这个图像,我称之为:jenkins-custom
FROM jenkins
# enable start tls
RUN echo "JENKINS_JAVA_OPTIONS=\"-Dmail.smtp.starttls.enable=true\"" >> /etc/default/jenkins
RUN chown jenkins:docker /etc/default/jenkins
Run Code Online (Sandbox Code Playgroud)
我应该考虑一下:
在我的例子中,我试图在默认的Jenkins docker镜像中激活STARTTLS,我应该在第二张图像中重新启动进程吗?
谢谢大家 ;)
ENTRYPOINT执行时正在运行的命令docker run。但是,RUN当您运行时,将执行中的命令docker build。
在您的情况下,将发生的情况是,当您docker build映像时,将生成一个新的Jenkins配置文件,然后在您启动docker run该文件时,依次tini执行jenkins-entrypoint.sh。
如果您要更改的是Jenkins配置,而没有其他选择,那么这里的内容就很好。
| 归档时间: |
|
| 查看次数: |
1588 次 |
| 最近记录: |