Docker image with php, pear, xdiff, pagespeed, apache and certbot. Based on ubuntu:bionic
Docker hub : monkeycompany/cebus
Github project : monkey-company/cebus
- STANDARD : php, pear, xdiff, pagespeed, apache, certbot
- Last stable :
monkeycompany/cebus:latest
- Last testing :
monkeycompany/cebus:testing
- Last stable :
- NGINX : php, pear, xdiff, pagespeed, nginx, certbot (Coming soon !)
- Last stable :
monkeycompany/cebus:nginx
- Last testing :
monkeycompany/cebus:nginx-testing
- Last stable :
- MULTI-THREADING : php-zts, pear, xdiff, pagespeed, apache, certbot, parallel (Coming soon !)
- Last stable :
monkeycompany/cebus:mt
- Last testing :
monkeycompany/cebus:mt-testing
- Last stable :
- MULTI-THREADING NGINX : php-zts, pear, xdiff, pagespeed, nginx, certbot, parallel (Coming soon !)
- Last stable :
monkeycompany/cebus:mt-nginx
- Last testing :
monkeycompany/cebus:mt-nginx-testing
- Last stable :
Template : monkeycompany/cebus:[BUILD]-[VERSION]
- Version 1.2.3 for STANDARD :
monkeycompany/cebus:std-1.2.3
- Version 1.0.2 for MULTI-THREADING NGINX :
monkeycompany/cebus:mt-nginx-1.0.2
- DOMAIN :
localhost
domain for let's encrypt - EMAIL :
admin@localhost
email for let's encrypt - TZ :
Europe/Paris
timezone - SHFILE :
/etc/apache2/file.sh
additionnal script for cron or other - PAGESPEED :
false
install google pagespeed module apache - LIBMOD :
re2c
additionnal dependencies - APAMOD :
cache,rewrite,ssl,headers
apache2 modules - ADPMOD :
autoindex
apache2 disable modules - PHPMOD :
bcmath,bz2,intl,gd,mbstring,mysql,zip
php modules - PEAMOD :
xdiff
pear packages
- Let's encrypt configuration :
/etc/letsencrypt/
- Apache configuration :
/etc/apache2/
- PHP configuration :
/etc/php/
- Apache webroot :
/var/www/html/
- HTTP :
80
- HTTPS :
443
Run the docker run -d --restart=unless-stopped -p 80:80 -p 443:443 -v ${PWD}/path/letsencrypt-conf/:/etc/letsencrypt/ -v ${PWD}/path/apache-conf/:/etc/apache2/ -v ${PWD}/path/php-conf/:/etc/apache2/ -v ${PWD}/path/www/:/var/www/html/ -e DOMAINS='example.com' -e EMAIL='admin@example.com' monkeycompany/cebus:latest
command.
Create a docker-compose.yml
file or import yaml in Rancher.
cebus:
image: monkeycompany/cebus:latest
ports:
- '80:80'
- '443:443'
environment:
DOMAINS: 'example.com'
EMAIL: 'admin@example.com'
PAGESPEED: 'true'
LIBMOD: 're2c'
APAMOD: 'cache,rewrite,ssl,headers'
APDMOD: 'autoindex'
PHPMOD: 'bcmath,bz2,intl,gd,mbstring,mysql,zip'
PEAMOD: 'xdiff'
volumes:
- ${PWD}/path/letsencrypt-conf/:/etc/letsencrypt/
- ${PWD}/path/apache-conf/:/etc/apache2/
- ${PWD}/path/php-conf/:/etc/php/
- ${PWD}/path/www/:/var/www/html/
Run the docker-compose up
command in the same directory.
Run the certbot --apache --non-interactive --agree-tos --email $EMAIL --domains $DOMAINS certonly
command in the container.
If you use Kubernetes or Rancher, regenerate all the containers to apply the configurations in volumes.
If you need cron or additionnal commands, use the variable SHFILE
for define a path and make script file :)