ENTRYPOINT Docker指令在扩展图像时如何反应

Dim*_*iwa 7 jenkins docker

我想知道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)

我应该考虑一下:

  1. 我的新线后触发了jenkins入口点.
  2. 在我的新线之前,入口点会被歪曲.
  3. 不会触发入口点.

在我的例子中,我试图在默认的Jenkins docker镜像中激活STARTTLS,我应该在第二张图像中重新启动进程吗?

谢谢大家 ;)

Tho*_*zco 5

ENTRYPOINT执行时正在运行的命令docker run。但是,RUN当您运行时,将执行中的命令docker build

在您的情况下,将发生的情况是,当您docker build映像时,将生成一个新的Jenkins配置文件,然后在您启动docker run该文件时,依次tini执行jenkins-entrypoint.sh


如果您要更改的是Jenkins配置,而没有其他选择,那么这里的内容就很好。