Stafli PHP Stack builds based on Debian and CentOS, and developed as scripts for Docker.
Continues on Stafli * builds.
This project is part of the Stafli Application Stack.
Requires Docker Compose 1.6.x or higher due to the version 2 format of the docker-compose.yml files.
There are docker-compose.yml files per distribution, as well as docker-compose.override.yml and .env files, which may be used to override configuration. An optional Makefile is provided to help with loading these with ease and perform commands in batch.
Scripts are also provided for each distribution to help test and deploy the installation procedures in non-Docker environments.
The images are automatically built at a repository in the Docker Hub registry.
The services use custom images as a starting point for the following distributions:
- Debian, from the official repository
- CentOS, from the official repository
These are the services described by the dockerfile and docker-compose files:
- Memcached 1.4.x Cache, built on Stafli Memcached Cache
- Redis 3.2.x Cache, built on Stafli Redis Cache
- MariaDB 10.x.x RDBMS, built on Stafli MariaDB RDBMS
- PHP 5.6.x Language, built on Stafli PHP Language
- HTTPd 2.2.x/2.4.x Web, built on Stafli HTTPd Web
- HTTPd 2.2.x/2.4.x Proxy, built on Stafli HTTPd Proxy
These are the resulting images upon building:
-
Stable:
- Memcached 1.4.x Cache:
- Redis 3.2.x Cache:
- MariaDB 10.x.x RDBMS:
- PHP 5.6.x Language:
- HTTPd 2.x.x Web:
- HTTPd 2.x.x Proxy:
-
Old Stable:
- Memcached 1.4.x Cache:
- Redis 3.2.x Cache:
- MariaDB 10.x.x RDBMS:
- PHP 5.6.x Language:
- HTTPd 2.x.x Web:
- HTTPd 2.x.x Proxy:
These containers can be created from the images:
-
Stable:
- Memcached 1.4.x Cache:
- stafli_stack_php56_cache_memcached14_debian8_xxx
- stafli_stack_php56_cache_memcached14_centos7_xxx
- Redis 3.2.x Cache:
- stafli_stack_php56_cache_redis32_debian8_xxx
- stafli_stack_php56_cache_redis32_centos7_xxx
- MariaDB 10.x.x RDBMS:
- stafli_stack_php56_rdbms_mariadb10_debian8_xxx
- stafli_stack_php56_rdbms_mariadb10_centos7_xxx
- PHP 5.6.x Language:
- stafli_stack_php56_language_php56_debian8_xxx
- stafli_stack_php56_language_php56_centos7_xxx
- HTTPd 2.x.x Web:
- stafli_stack_php56_web_httpd24_debian8_xxx
- stafli_stack_php56_web_httpd24_centos7_xxx
- HTTPd 2.x.x Proxy:
- stafli_stack_php56_proxy_httpd24_debian8_xxx
- stafli_stack_php56_proxy_httpd24_centos7_xxx
- Memcached 1.4.x Cache:
-
Old Stable:
- Memcached 1.4.x Cache:
- stafli_stack_php56_cache_memcached14_debian7_xxx
- stafli_stack_php56_cache_memcached14_centos6_xxx
- Redis 3.2.x Cache:
- stafli_stack_php56_cache_redis32_debian7_xxx
- stafli_stack_php56_cache_redis32_centos6_xxx
- MariaDB 10.x.x RDBMS:
- stafli_stack_php56_rdbms_mariadb10_debian7_xxx
- stafli_stack_php56_rdbms_mariadb10_centos6_xxx
- PHP 5.6.x Language:
- stafli_stack_php56_language_php56_debian7_xxx
- stafli_stack_php56_language_php56_centos6_xxx
- HTTPd 2.x.x Web:
- stafli_stack_php56_web_httpd22_debian7_xxx
- stafli_stack_php56_web_httpd22_centos6_xxx
- HTTPd 2.x.x Proxy:
- stafli_stack_php56_proxy_httpd22_debian7_xxx
- stafli_stack_php56_proxy_httpd22_centos6_xxx
- Memcached 1.4.x Cache:
Note: this method will not allow you to use the docker-compose files nor the Makefile.
- To pull the images, try typing:
docker pull <image_url>
- You can start a new container interactively by typing:
docker run -ti <image_url> /bin/bash
Where <image_url> is the full image url (lookup the image list above).
Example:
docker pull stafli/stafli.stack.php:memcached14_debian8
docker pull stafli/stafli.stack.php:redis32_debian8
docker pull stafli/stafli.stack.php:mariadb10_debian8
docker pull stafli/stafli.stack.php:php56_debian8
docker pull stafli/stafli.stack.php:web_httpd24_debian8
docker pull stafli/stafli.web.httpd:proxy_httpd24_debian8
docker run -ti stafli/stafli.stack.php:memcached14_debian8 /bin/bash
Note: this method allows using docker-compose and the Makefile.
- Download the repository zip file and unpack it or clone the repository using:
git clone https://github.com/stafli-org/stafli.stack.php.git
- Navigate to the project directory through the terminal:
cd stafli.stack.php
- Type in the desired operation through the terminal:
make <operation> DISTRO=<distro>
Where is the distribution/directory and is the desired docker-compose operation.
Example:
git clone https://github.com/stafli-org/stafli.stack.php.git;
cd stafli.stack.php;
# Example #1: quick start, with build
make up DISTRO=debian8;
# Example #2: quick start, with pull
make img-pull DISTRO=debian8;
make up DISTRO=debian8;
# Example #3: manual steps, with build
make img-build DISTRO=debian8;
make net-create DISTRO=debian8;
make vol-create DISTRO=debian8;
make con-create DISTRO=debian8;
make con-start DISTRO=debian8;
make con-ls DISTRO=debian8;
Type make
in the terminal to discover all the possible commands.
Stafli PHP Stack
Copyright (C) 2016-2017 Stafli
Luís Pedro Algarvio
This file is part of the Stafli Application Stack.
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.