簡體   English   中英

防止apache2 / http2作為Docker容器的守護進程運行?

[英]Prevent apache2 / http2 from running as daemon for Docker container?

我在Dockerfile的末尾有這個:

ENTRYPOINT service apache2 start

我記錄了這個:

 * Starting Apache httpd web server apache2 

然后我的容器將退出 - 它不應該是一個錯誤,我只是認為容器退出,因為該進程是一個守護進程。 有辦法讓它保持開放嗎?

所以我可以保持容器活着:

ENTRYPOINT service apache2 restart && /bin/bash -c "trap : TERM INT; sleep infinity & wait"

但是我不知道怎么把stdout / stderr從Apache轉到Docker容器的stdout / stderr,有人知道嗎? 如果我保持容器存活,我可以確認apache正在運行。

我也發現了這個例子:

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

但我找不到我的apache2可執行文件的路徑。

所以這應該是正確的答案:

CMD ["-D", "FOREGROUND"]
ENTRYPOINT ["apachectl"]

也就是說,如果您安裝了apache:

RUN apt-get install -y apache2

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM