CMD 与 ENTRYPOINT都是用于指定启动容器执行的命令,区别在于:
当docker run 命令中有参数时,守护进程会忽略CMD命令。
使用ENTRYPOINT指令不会忽略,并且会接收docker run 参数附加到命令行中。
docker run 的命令,相当于 新加的 CMD, 会覆盖原有的CMD
nginx 的镜像就是这样。
docker run -it -p 8888:80 --name nnnbb5 nginx 这样执行,无法输入 命令,因为前台挂着nginx 命令
docker run -it -p 8888:80 --name nnnbb5 nginx bash 这样可以输入命令,但是不会启动服务。
当退出他们的时候,他们也就exit 了
标签:CMD,run,命令,cmd,nginx,entrypoint,docker,dockerfile,80 From: https://www.cnblogs.com/qgbo/p/17688986.html