webdevops/hhvm-apache

These image extends webdevops/hhvm with a apache daemon which is running on port 80 and 443

Uses Supervisord

This image is using supervisor and runs the daemon under user application (UID 1000; GID 1000) as default. If the container is started under a different user the daemon will be run under the specified uid.

Docker image tags

Tag Distribution name
ubuntu-14.04 trusty (LTS)
ubuntu-16.04 xenial (LTS)

Environment variables

Base environment variables

Environment variable Description Default
LOG_STDOUT Destination of daemon output empty (stdout)
LOG_STDERR Destination of daemon errors empty (stdout)
SERVICE_CRON_OPTS cron daemon arguments empty (when syslog is used)
SERVICE_DNSMASQ_OPTS dnsmasq daemon arguments empty (when syslog is used)
SERVICE_DNSMASQ_USER dnsmasq effective user root
SERVICE_POSTFIX_OPTS postfix daemon arguments empty (when syslog is used)
SERVICE_SSH_OPTS ssh daemon arguments empty (when syslog is used)
SERVICE_SUPERVISOR_OPTS supervisor daemon arguments empty (when syslog is used)
SERVICE_SUPERVISOR_USER supervisor effective user root
SERVICE_SYSLOG_OPTS syslog daemon arguments empty (when syslog is used)

Base environment variables

Environment variable Description Default
POSTFIX_MYNETWORKS Postfix mynetworks address empty
POSTFIX_RELAYHOST Postfix upstream relay server empty

Web environment variables

Environment variable Description Default
WEB_DOCUMENT_ROOT Document root for webserver /app
WEB_DOCUMENT_INDEX Index document index.php
WEB_ALIAS_DOMAIN Domain aliases *.vm
WEB_PHP_SOCKET PHP-FPM socket address 127.0.0.1:9000 (for php-* images)
SERVICE_PHPFPM_OPTS PHP-FPM command arguments empty (when php fpm is used)
SERVICE_APACHE_OPTS Apache command arguments empty (when apache is used)
SERVICE_NGINX_OPTS Nginx command arguments empty (when nginx is used)

Customization

Apache customization

This image has two directories for configuration files which will be automatic loaded.

For global configuration options the directory /opt/docker/etc/httpd/conf.d can be used. For vhost configuration options the directory /opt/docker/etc/httpd/vhost.common.d can be used.

Any *.conf files inside these direcories will be included either global or the vhost section.

Docker image layout

Apache layout

File/Directory Description
/opt/docker/etc/httpd/conf.d badge-customization

Main global configuration directory

(automatically included files)

/opt/docker/etc/httpd/conf.d/10-php.conf PHP cgi configuration
/opt/docker/etc/httpd/conf.d/10-error-document.conf Error document configuration
/opt/docker/etc/httpd/conf.d/10-log.conf Log configuration
/opt/docker/etc/httpd/conf.d/10-server.conf Basic server configuration
/opt/docker/etc/httpd/ssl badge-customization

SSL configuration directory for

certifications and keys

/opt/docker/etc/httpd/ssl/server.crt badge-customization Example SSL certification (*.vm)
/opt/docker/etc/httpd/ssl/server.csr badge-customization Example SSL certification request (*.vm)
/opt/docker/etc/httpd/ssl/server.key badge-customization Example SSL key (*.vm)
/opt/docker/etc/httpd/vhost.common.d badge-customization

Vhost configuration directory

(automatically included files)

/opt/docker/etc/httpd/vhost.common.d/01-boilerplate.conf

Placeholder configuration file

(prevent include errors for Apache 2.2)

/opt/docker/etc/httpd/global.conf Global httpd configuration
/opt/docker/etc/httpd/main.conf Main httpd configuration
/opt/docker/etc/httpd/php.conf badge-deprecated Deprecated PHP configuration
/opt/docker/etc/httpd/vhost.common.conf badge-deprecated Deprecated vhost common include
/opt/docker/etc/httpd/vhost.conf Vhost configuration
/opt/docker/etc/httpd/vhost.ssl.conf Vhost SSL configuration
/opt/docker/etc/supervisor.d/httpd.conf Supervisord configuration file for Apache HTTPD

HHVM layout

File/Directory Description
/opt/docker/etc/supervisor.d/hhvm.conf Supervisord configuration file for HHVM