Samson based deployment service with Ansistrano, Capistrano and PHP Deployer
7.2K
Automated built and tested on WebDevOps Build server sponsored by 
| Dockerfile | Description | Depends on |
|---|---|---|
bootstrap | Distribution with ansible and some scripts | official docker files |
base | Base containers for WebDevOps service containers | webdevops/bootstrap |
base-app | Base containers for WebDevOps application containers | webdevops/base |
php | PHP (cli and fpm) service containers | webdevops/base-app |
php-apache | PHP (cli and fpm) with Apache service containers | webdevops/php |
php-nginx | PHP (cli and fpm) with Nginx service containers | webdevops/php |
hhvm | HHVM (cli and fcgi) service containers | webdevops/base-app |
hhvm-apache | HHVM (cli and fcgi) with Apache service containers | webdevops/hhvm |
hhvm-nginx | HHVM (cli and fcgi) with Nginx service containers | webdevops/hhvm |
vsftp | VSFTP (ftp service) service container | webdevops/base:latest |
storage | Storage (noop) container | webdevops/base:latest |
ssh | SSH service container | webdevops/base:latest |
postfix | Postfix service container | webdevops/base:latest |
mail-sandbox | Mail catcher service container (catches all mails via SMTP and are accessable via IMAP) | webdevops/postfix:latest |
samson-deployment | Samson based deployment service | zendesk/samson |
sphinx | Sphinx container | webdevops/bootstrap:alpine-3 |
varnish | Varnish container | webdevops/base:alpine-3 |
Local building of containers can be done with make and Makefile:
| Command | Description |
|---|---|
sudo make setup | To Install dependancies of build chain tools |
make all | Build all containers fast mode (parallel building, FAST=1) |
FAST=0 make all | Build all containers slow mode (serial building) |
DEBUG=1 make all | Show log of build process even if process is successfull |
FORCE=1 make all | Force container build (docker build --no-cache ...) |
WHITELIST="alpine-3 centos-7" make all | Build all container with tag alpine-3 or centos-7 |
make baselayout | Build and deploy baselayout.tar |
make provision | Deploy all configuration files from _provisioning/ |
make dist-update | Update local distrubtion images (CentOS, Debian, Ubuntu) |
make full | Run provision and build all images |
make test | Run testsuite (use currently available docker images on your docker host) |
make test-hub-images | Run testsuite but pull newest docker images from docker hub first |
make push | Run tests and rebuild them (use cache) and push them to docker hub |
make publish | Run dist-update, all with FORCE and push |
make base | Build all base containers |
make service | Build all service containers |
make php | Build all php containers |
make hhvm | Build all hhvm containers |
make nginx | Build all nginx containers |
make apache | Build all apache containers |
make webdevops/php-nginx | Build specific containers (as example) |
All base inherited containers provides an modular provisioning available as simple shell scripts and ansible roles.
See docker/base/README.md for more informations.
The configuration and provisioning files are build from _provisioning/ to get a consistent configuraiton for all containers. This also should reduce copy&paste errors because the configuration will be deployed automatically into containers on build process.
Content type
Image
Digest
sha256:ac420c8db…
Size
721.4 MB
Last updated
about 8 years ago
docker pull webdevops/samson-deployment