服务器之家:专注于VPS、云服务器配置技术及软件下载分享
分类导航

云服务器|WEB服务器|FTP服务器|邮件服务器|虚拟主机|服务器安全|DNS服务器|服务器知识|Nginx|IIS|Tomcat|

服务器之家 - 服务器技术 - 服务器知识 - docker run之后状态总是Exited

docker run之后状态总是Exited

2021-05-20 18:55蚁族的奋斗1 服务器知识

这篇文章主要介绍了docker run之后状态总是Exited,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

add -it

docker run -it -name test -d nginx:latest /bin/bash

-d: 后台运行容器,并返回容器ID;

-i: 以交互模式运行容器,通常与 -t 同时使用;

-t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;

补充知识:docker-compose 通过sh命令启动nginx 容器自动退出exited with code 0

docker-compose使用的模板文件中有通过entrypoint或者command参数设置容器启动自动执行sh命令开启nginx服务,但是docker-compose up后容器自动退出了

nginx-web1 exited with code 0

nginx-web2 exited with code 0

nginx-web3 exited with code 0

原因:Docker的机制是让容器后台运行,必须至少有一个前台进程,容器运行的命令如果不是那些一直挂起的命令(比如运行top,tail),会自动退出

解决:可以使用包含 -g “daemon off;” 配置项的sh命令以前台方式开启nginx服务

nginx -c /usr/local/nginx/conf/nginx.conf -g "daemon off;"

如果容器需要同时启动多个进程,只需要将其中一个挂起到前台即可,例如:

service php-fpm start && nginx -g "daemon off;"

service php-fpm start && service nginx start && tail -f /var/log/nginx/error.log

以上这篇docker run之后状态总是Exited就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/github_39319000/article/details/80866508

延伸 · 阅读

精彩推荐