1. 程式人生 > >Docker容器裏的進程為什麽要前臺運行

Docker容器裏的進程為什麽要前臺運行

裏的 usr data net log pid 為什麽 clip web服務

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

[plain] view plain copy
  1. ENTRYPOINT [ "/usr/sbin/apache2" ]
  2. CMD ["-D", "FOREGROUND"]

又例如nginx:

[plain] view plain copy
  1. ENTRYPOINT [ "/usr/sbin/nginx", "-g", "daemon off;" ]


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

Docker容器裏的進程為什麽要前臺運行