栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

当基本映像为centos vs ubuntu时,当以shell形式运行CMD / ENTRYPOINT时,不同的进程作为PID 1运行:

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

当基本映像为centos vs ubuntu时,当以shell形式运行CMD / ENTRYPOINT时,不同的进程作为PID 1运行:

这是的行为

bash
。Docker仍在运行带有外壳的命令,您可以通过检查来识别该外壳:

$ docker inspect test-centos-entrypoint --format '{{.Config.Entrypoint}}'[/bin/sh -c ping localhost]

您可以看到/ bin / sh的版本(请注意GNU bash部分):

$ docker exec -it quicktest /bin/sh --versionGNU bash, version 4.2.46(2)-release (x86_64-redhat-linux-gnu)Copyright (C) 2011 Free Software Foundation, Inc.License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>This is free software; you are free to change and redistribute it.         There is NO WARRANTY, to the extent permitted by law.

/ bin /
sh的ubuntu版本(可能是破折号)甚至不支持该

--version
标志,并且未链接到bash。但是,如果您将ubuntu映像更改为使用bash而不是/
bin / sh,则会看到与centos匹配的行为:

$ cat df.ubuntu-entrypointFROM ubuntu:trustyENTRYPOINT [ "/bin/bash", "-c", "ping localhost" ]$ DOCKER_BUILDKIT=0 docker build -t test-ubuntu-entrypoint -f df.ubuntu-entrypoint .Sending build context to Docker daemon  23.04kBStep 1/2 : FROM ubuntu:trusty ---> 67759a80360cStep 2/2 : ENTRYPOINT [ "/bin/bash", "-c", "ping localhost" ] ---> Running in 5c4161cafd6bRemoving intermediate container 5c4161cafd6b ---> c871fe2e2063Successfully built c871fe2e2063Successfully tagged test-ubuntu-entrypoint:latest$ docker run -d --name quicktest2 --rm test-ubuntu-entrypoint362bdc75e4a960854ff17cf5cae62a3247c39079dc1290e8a85b88114b6af694$ docker exec -it quicktest2 ps -efUID        PID  PPID  C STIME TTY          TIME CMDroot         1     0  0 13:05 ?        00:00:00 ping localhostroot         8     0  0 13:05 pts/0    00:00:00 ps -ef


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/447474.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号