Dockerfile案例--ONBUILD命令案例

ONBUILD:当构建一个被继承的Dockerfile时运行命令,父镜像在被子继承后父镜像的onbuild被触发。

ONBUILD构建案例:

父Dockerfile:(father)

FROM centos
RUN yum install -y curl
ENTRYPOINT [ "curl", "-s", "http://ip.cn" ]
ONBUILD RUN echo "father is onbuild...................."

构建父镜像:

执行命令:

docker build -f ~/myDocker/father -t centos:father . 

输出结果:

hadoop@Docker:~/myDocker$ docker build -f ~/myDocker/father -t centos:father . 
Sending build context to Docker daemon  6.144kB
Step 1/4 : FROM centos
 ---> 75835a67d134
Step 2/4 : RUN yum install -y curl
 ---> Using cache
 ---> 99f208d9a380
Step 3/4 : ENTRYPOINT [ "curl", "-s", "http://ip.cn" ]
 ---> Using cache
 ---> 906847735fbe
Step 4/4 : ONBUILD RUN echo "father is onbuild...................."
 ---> Using cache
 ---> e0308e765f68
Successfully built e0308e765f68
Successfully tagged centos:father

子Dockerfile:(son)

# 父镜像
FROM centos:father

RUN yum install -y curl
ENTRYPOINT [ "curl", "-s", "http://ip.cn" ]

执行命令:

docker build -f ~/myDocker/son -t centos:son .

构建:

我们可以看到父镜像的ONBUILD被执行了。

猜你喜欢

转载自blog.csdn.net/kaizuidebanli/article/details/83781516