dockerfile entrypoint cmd 同时使用

发布时间 2023-09-09 10:27:55作者: qgbo

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 了