Я создал док-контейнер с установленной в нем службой httpd. Но всякий раз, когда я перезапускаю контейнер, служба httpd не возвращается в сеть. Даже я добавил службу в chkconfig. Статус httpd отображается как «httpd мертв, но файл pid существует»
Я проверил журнал контейнера докеров
{"log":"[Thu Apr 27 02:38:59 2017] [notice] suEXEC mechanism enabled (wrapper: /usr/sbin/suexec)\r\n","stream":"stdout","time":"2017-04-27T03:32:12.168314399Z"}
{"log":"[Thu Apr 27 02:38:59 2017] [notice] Digest: generating secret for digest authentication ...\r\n","stream":"stdout","time":"2017-04-27T03:32:12.168317105Z"}
{"log":"[Thu Apr 27 02:38:59 2017] [notice] Digest: done\r\n","stream":"stdout","time":"2017-04-27T03:32:12.168319918Z"}
{"log":"[Thu Apr 27 02:38:59 2017] [notice] Apache/2.2.31 (Unix) DAV/2 configured -- resuming normal operations\r\n","stream":"stdout","time":"2017-04-27T03:32:12.168322653Z"}
{"log":"^C\r\n","stream":"stdout","time":"2017-04-27T03:32:45.680664198Z"}
, но он не показывает никакой полезной информации для решения проблемы.
В моем докере работает сервер AWS EC2.
] Кто-нибудь может мне помочь в этом?
У меня возникла проблема с использованием изображения fauria/lap
. Похоже, что контейнер не грациозно завершает httpd-процесс, поэтому сервис не может запуститься во второй раз из-за pid-файла.
Нашим решением была реализация посредника docker-entrypoint2. sh
, который удаляет файл и вызывает оригинальный docker-entrypoint.sh
.
В нашем случае это поведение наследуется от centos:7
и входящей в его состав системы управления сервисом.