Docker容器里的進程為什么要前台運行?相同的問題:docker運行apache為什么帶FOREGROUND參數?docker運行nginx為什么帶`daemon off`參數?


《第一本Docker書》里面,講到Docker容器啟動web服務時,都指定了前台運行的參數。
例如apache:

ENTRYPOINT [ "/usr/sbin/apache2" ]
CMD ["-D", "FOREGROUND"]

又例如nginx:

ENTRYPOINT [ "/usr/sbin/nginx", "-g", "daemon off;" ]

為什么要這么做呢?因為Docker容器僅在它的1號進程(PID為1)運行時,會保持運行。如果1號進程退出了,Docker容器也就退出了。

參考:https://blog.csdn.net/code_runner/article/details/50879007


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM