.. | ||
_layouts | ||
assets | ||
img | ||
_config.yml | ||
CNAME | ||
Configuration.md | ||
Emails.md | ||
FAQ.md | ||
Info.md | ||
Intranet.md | ||
Logs.md | ||
PHP_Projects.md | ||
README.md | ||
Updating.md | ||
Usage.md |
Devilbox
| Overview | Installing | Updating | Configuration | Usage | Technical | FAQ |
Dockerized LAMP/MEAN stack
The devilbox is a modern and highly customisable LAMP and MEAN stack replacement based purely on docker and docker-compose running on all major platforms. It supports an unlimited number of projects for which vhosts and DNS records are created automatically. Email catch-all and popular development tools will be at your service as well.
Supported Host OS
Don't worry about switching computers. The devilbox will run on all major operating systems.
Install, Configure and Start
Your whole development stack is up and running in a few simple steps.
# Get the soures
$ git clone https://github.com/cytopia/devilbox
$ cd devilbox
# Create and customize the config file
$ cp env-example .env
$ vim .env
# Start your daemons
$ docker-compose up
Run exactly what you need
Choose your required daemons and select a version. Any combination is possible.
This will allow you, to always exactly simulate your production environment locally during development.
Apache | Nginx | PHP | MySQL | MariaDB | PgSQL | Redis | Memcached | MongoDB |
---|---|---|---|---|---|---|---|---|
2.2 | stable | 5.4 | 5.5 | 5.5 | 9.1 | 2.8 | 1.4.21 | 2.8 |
2.4 | mainline | 5.5 | 5.6 | 10.0 | 9.2 | 3.0 | 1.4.22 | 3.0 |
5.6 | 5.7 | 10.1 | 9.3 | 3.2 | 1.4.23 | 3.2 | ||
7.0 | 8.0 | 10.2 | 9.4 | ... | 3.4 | |||
7.1 | 10.3 | 9.5 | 1.4.36 | 3.5 | ||||
HHVM | 9.6 | latest |
Run only what you need
You are not forced to load the whole stack everytime. Only bring up what you really need.
It is also possible to add or remove daemons while the stack is already running.
# Load traditional lamp stack only
$ docker-compose up httpd php mysql
# Add redis to the running stack
$ docker-compose up redis
# Stop MySQL from the current stack
$ docker-compose stop mysql
Introduction Videos
Head over to youtube for a quick introduction and see for yourself how easily new projects can be created.
Batteries included
No need to download external tools. Everything is bundled, up-to-date and available inside the containers.
Supported Frameworks and CMS
There is nothing special about the devilbox, so any framework or CMS that will work with normal LAMP/MEAN stacks will work here as well. However in order to make double sure, a few popular applications have been explicitly tested.
Devilbox Intranet
Once the devilbox is up and running, you can visit the bundled intranet on http://localhost.
The intranet is not just a simple dash, it provides many useful tools:
Security
Be aware that the docker service is running with root privileges on your system (like any other webserver for example). The devilbox is using a mix of official docker images and custom images. All integrated containers are available on Github and can be reviewed at any time.
Up-to-dateness
Docker containers are pushed to Docker Hub frequently.
It should be enough for you to pull updated images on a regeular basis.
$ docker-compose pull
However, if a new minor version (PHP for example) has just been released and you want to use it right away with the devilbox, you can simply *git clone* the docker repository and rebuild the container. Each container repository contains a shell script for easy building.
# Download PHP 7.1 repository
$ git clone https://github.com/cytopia/docker-php-fpm-7.1
# Rebuild the container in order to get the latest minor/patch version
$ cd docker-php-fpm-7.1
$ ./build/docker-rebuild.sh
Integration Tests
In order to make sure everything always runs stable and as expected, the devilbox makes heavy use of integration tests. You can head over to Travis-CI and have a look at stable and nightly builds.