Skip to content

Instantly share code, notes, and snippets.

@moorscode
Created April 8, 2017 10:48
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save moorscode/0eaeeb05d966bee7051d800967edd68a to your computer and use it in GitHub Desktop.
Save moorscode/0eaeeb05d966bee7051d800967edd68a to your computer and use it in GitHub Desktop.
WordPress with two Redis and a Memcached service
version: "2"
services:
mariadb:
image: wodby/mariadb:10.1-2.0.0
environment:
MYSQL_ROOT_PASSWORD: password
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress
# command: --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci # The simple way to override the mariadb config.
# volumes:
# - ./mariadb-init:/docker-entrypoint-initdb.d # Place init .sql file(s) here.
# - /path/to/mariadb/data/on/host:/var/lib/mysql # I want to manage volumes manually.
php:
image: wodby/wordpress-php:7.0-2.0.0
# image: wodby/wordpress-php:7.1-2.0.0
environment:
PHP_SENDMAIL_PATH: /usr/sbin/sendmail -t -i -S mailhog:1025
# PHP_XDEBUG: 1
# PHP_XDEBUG_DEFAULT_ENABLE: 1
# PHP_XDEBUG_REMOTE_CONNECT_BACK: 0 # This is needed to respect remote.host setting bellow
# PHP_XDEBUG_REMOTE_HOST: "10.254.254.254" # You will also need to 'sudo ifconfig lo0 alias 10.254.254.254'
volumes:
- ./:/var/www/html
# - d4d-unison-sync:/var/www/html:rw # Replace volume to this to use docker-sync for macOS users
nginx:
image: wodby/wordpress-nginx:4-1.10-2.0.0
environment:
NGINX_BACKEND_HOST: php
NGINX_SERVER_ROOT: /var/www/html/
volumes:
- ./:/var/www/html
labels:
- 'traefik.backend=nginx'
- 'traefik.port=80'
- 'traefik.frontend.rule=Host:wp.docker.localhost'
redis-1:
image: wodby/redis:3.2-2.0.1
redis-2:
image: wodby/redis:3.2-2.0.1
memcached:
image: wodby/memcached:1.4
pma:
image: phpmyadmin/phpmyadmin
environment:
PMA_HOST: mariadb
PMA_USER: wordpress
PMA_PASSWORD: wordpress
PHP_UPLOAD_MAX_FILESIZE: 1G
PHP_MAX_INPUT_VARS: 1G
labels:
- 'traefik.backend=pma'
- 'traefik.port=80'
- 'traefik.frontend.rule=Host:pma.wp.docker.localhost'
mailhog:
image: mailhog/mailhog
labels:
- 'traefik.backend=mailhog'
- 'traefik.port=8025'
- 'traefik.frontend.rule=Host:mailhog.wp.docker.localhost'
traefik:
image: traefik
restart: unless-stopped
command: -c /dev/null --web --docker --logLevel=INFO
ports:
- '8000:80'
- '8080:8080'
volumes:
- /var/run/docker.sock:/var/run/docker.sock
# Docker-sync for macOS users
#volumes:
# d4d-unison-sync:
# external: true
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment