Base image for all Joomla 3 sites
10K+
Highly configurable nginx-PHP webserver stack built on funkygibbon/nginx-pagespeed, which is in turn built on a lightly modified Phusion Ubuntu base image
Docker Hub: funkygibbon/nginx-php-exim
docker run -p "80:80" -p "443:443" -e "APP_HOSTNAME=some.example.com" -v /some/dir/www:/app/www funkygibbon/nginx-php-exim
Without SSL (faster boot)
docker run -p "80:80" -e "APP_HOSTNAME=some.example.com" -e "SSL_ENABLED=false" -v /some/dir/www:/app/www funkygibbon/nginx-php-exim
fuww/nginx-pagespeed-php7-exim
docker build -t fuww/nginx-pagespeed-php7-exim:latest . && \
docker run -p "80:80" -e "SSL_ENABLED=false" -e "NR_INSTALL_KEY=8xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0" -e "NR_APP_NAME=MyApp" fuww/nginx-pagespeed-php7-exim
docker-compose up
docker tag -f fuww/nginx-pagespeed-php7-exim:latest fuww/nginx-pagespeed-php7-exim:latest && \
docker push fuww/nginx-pagespeed-php7-exim:latest
Configurable via a plethora of environment variables, which are applied on service start
| var | default | description |
|---|---|---|
| APP_ENV | production | production, development :: 'development' enables http://www.xdebug.org/ |
| ADMIN_EMAIL | [email protected] | Server administrator email, used for intercepted email in development mode |
| CHOWN_APP_DIR | true | if true, chown -R $APP_USER:$APP_GROUP /app/www |
| APP_HOSTNAME | hostname -f | hostname of application |
| VIRTUAL_HOST | example.com | virtualhosts which this service should respond to, separated by commmas. Useful for operating behind jwilder/nginx-proxy. |
| TIMEZONE | Australia/Sydney | Server timezone |
| APP_USER | app | nginx and php5-fpm user |
| APP_GROUP | app | nginx and php5-fpm group |
| APP_UID | 1000 | user_id - useful when mounting volumes from host > guest to either share or delineate file access permission |
| APP_GID | 1000 | group_id |
| UPLOAD_MAX_SIZE | 30M | Maximum upload size, applied to nginx and php5-fpm |
| NGINX_MAX_WORKER_PROCESSES | 8 | nginx worker_processes is determined from number of processor cores on service start, up to the maximum permitted by NGINX_MAX_WORKER_PROCESSES |
| PHP_MEMORY_LIMIT | 128M | Maximum memory PHP can use per worker |
| PHP_PROCESS_MANAGER | dynamic | dynamic, static, ondemand :: PHP process manager scheme |
| PHP_MAX_CHILDREN | 6 | process manager maximum spawned children |
| PHP_START_SERVERS | 3 | if PHP_PROCESS_MANAGER is dynamic, this is the number of children spawned on boot |
| PHP_MIN_SPARE_SERVERS | 2 | if PHP_PROCESS_MANAGER is dynamic, this is the minimum number of idle children |
| PHP_MAX_SPARE_SERVERS | 3 | if PHP_PROCESS_MANAGER is dynamic, this is the maximum number of idle children |
| PHP_MAX_REQUESTS | 500 | Maximum number of requests each child process can process before terminating, which should mitigate any memory leaks. Set to 0 to disable. |
| PHP_DISABLE_FUNCTIONS | false | Comma separated list of additional functions to disable for security. These are appended to the default Ubuntu distribution disable_functions line |
| PHP_XDEBUG_REMOTE_HOST | 172.17.42.1 | If $APP_ENV is development, XDebug is enabled and configured to communicate to this remote host |
| PHP_XDEBUG_REMOTE_PORT | 9000 | XDebug port |
| PHP_XDEBUG_IDE_KEY | default_ide_key | XDebug IDE Key |
| EXIM_DELIVERY_MODE | local | smarthost, local :: set to smarthost to enable third party SMTP |
| EXIM_MAIL_FROM | example.com | domain from which exim4 mail appears to originate |
| EXIM_SMARTHOST | smtp.example.org::587 | smarthost relay SMTP server address and port (note the double colon (::) before port number) |
| EXIM_SMARTHOST_AUTH_USERNAME | [email protected] | SMTP username |
| EXIM_SMARTHOST_AUTH_PASSWORD | password_123 | SMTP password |
Content type
Image
Digest
Size
366.1 MB
Last updated
over 8 years ago
docker pull fuww/nginx-pagespeed-php7-exim