Skip to content
This repository has been archived by the owner on Aug 12, 2023. It is now read-only.


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
This branch is 129 commits ahead of psi-4ward:master.

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

This image is DEPRECATED/DEAD.

See for a newer image with a proper process manager.


Full documentation for this project can be found here:

We also have a development container:

Lightweight WordPress PHP7 PHP-FPM7 & Nginx Docker Production Image

Lightweight Docker image for the (latest) PHP-FPM and Nginx to run WordPress based on AlpineLinux

  • Image size only ~131MB !
  • Very new packages (alpine:edge) 2016-07-21:
    • PHP 7.0.13
    • Nginx nginx/1.10.2
    • Memory usage is around 50mb on a simple install.

A simple example

Say you want to run a single site on a VPS with Docker

mkdir -p /data/sites/

sudo docker run -e, -v /data/sites/ -p 80:80 etopian/alpine-php-wordpress

The following user and group id are used, the files should be set to this: User ID: Group ID:

chown -R 100:101 /data/sites/

Say you want to run a multiple WP sites on a VPS with Docker

sudo docker run -p 80:80 etopian/nginx-proxy
mkdir -p /data/sites/

sudo docker run -e, -v /data/sites/ etopian/alpine-php-wordpress

mkdir -p /data/sites/
sudo docker run -e, -v /data/sites/ etopian/alpine-php-wordpress

Populate /data/sites/ and /data/sites/ with your WP files. See if you need help on how to configure your database.

The following user and group id are used, the files should be set to this: User ID: Group ID:

chown -R 100:101 /data/sites/

Volume structure

  • htdocs: Webroot
  • logs: Nginx/PHP error logs


This image now includes WP-CLI baked in... So you can. Please su nginx before executing or else you can potentially compromise your host.

docker exec -it <container_name> bash
su nginx
cd /DATA/htdocs
wp-cli cli


For each multisite you need to give the domain as the -e VIRTUAL_HOST parameter. For instance,,, ... if you wish to add more sites you need to recreate the container.

Upload limit

The upload limit is 2 gigabyte.

Change php.ini value

modify files/php-fpm.conf

To modify php.ini variable, simply edit php-fpm.ini and add php_flag[variable] = value.

php_flag[display_errors] = on

Additional documentation on

Questions or Support

Docker WordPress Control Panel

DEVOPly is a free hosting control panel which does everything taught in this tutorial automatically and much more, backups, staging/dev/prod, code editor, Github/Bitbucket deployments, DNS, WordPress Management.


No releases published


No packages published


  • Dockerfile 56.3%
  • PHP 26.4%
  • Shell 17.3%