apachectl -DFOREGROUND exits immediately
I have found the problem for why running apachectl -DFOREGROUND
does not start the httpd
process. It seems we need this mkdir -p /run/apache2
. Here is the full Dockerfile if anybody is interested. It is for PHP 5.6, Apache 2.4 on Alpine. I have decided to use httpd
instead of apachectl
as I want apache to die when the docker container stops. Using httpd
will attach the process to the current shell.
FROM php:5.6-alpineRUN apk update && apk upgrade && \ apk add --no-cache apache2 && \ apk add --no-cache apache2-utils && \ apk add --no-cache php5-apache2 && \ apk add --no-cache php5-mysql && \ apk add --no-cache php5-mysqli && \ apk add --no-cache php5-pear && \ apk add --no-cache php5-cgi && \ apk add --no-cache php5-curl && \ apk add --no-cache php5-dev && \ apk add --no-cache php5-fpm && \ apk add --no-cache php5-gd && \ apk add --no-cache php5-imagick && \ apk add --no-cache php5-imap && \ apk add --no-cache php5-intl && \ apk add --no-cache php5-json && \ apk add --no-cache php5-mcryptRUN mkdir -p /run/apache2ENTRYPOINT ["httpd", "-D", "FOREGROUND"]