[英]Multiple httpd processes running in Docker Container
這是我為在centos
上安裝httpd
創建的Dockerfile
:
#Installing HTTPD
FROM centos:latest
MAINTAINER xxx@gmail.com
RUN yum install -y httpd
EXPOSE 80
#ENTRYPOINT ["systemctl"]
ENTRYPOINT ["/usr/sbin/httpd"]
構建后,當我運行容器時,我可以看到在該容器中運行了太多的httpd
進程:
docker run -d -p 80:80 httpd:4.0 -DFOREGROUND
Docker top
命令的輸出:
UID PID PPID C STIME TTY TIME CMD
root 2457 2443 0 04:26 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND
apache 2474 2457 0 04:26 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND
apache 2475 2457 0 04:26 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND
apache 2476 2457 0 04:26 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND
apache 2477 2457 0 04:26 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND
apache 2478 2457 0 04:26 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND
apache 2491 2457 0 04:26 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND
apache 2492 2457 0 04:26 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND
apache 2493 2457 0 04:26 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND
root 2512 2500 0 04:27 pts/0 00:00:00 /bin/bash
apache 2532 2457 0 04:27 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND
請讓我知道為什么這么多httpd進程正在運行,以及如何只有一個進程具有PID 1?
Apache會運行多個進程以准備好快速捕獲客戶端請求,因為產生服務器進程很慢,因此最好在請求進入時准備好一個進程。
您可以通過StartServers , MinSpareServers , MaxSpareServers和ServerLimit指令在httpd.conf
配置它們的編號。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.