Skip to content

Instantly share code, notes, and snippets.

@adrianenriquez
Last active January 7, 2026 13:59
Show Gist options
  • Select an option

  • Save adrianenriquez/6d348716caa61508f914e2a77e4e8ef1 to your computer and use it in GitHub Desktop.

Select an option

Save adrianenriquez/6d348716caa61508f914e2a77e4e8ef1 to your computer and use it in GitHub Desktop.
Sample WP docker-compose
services:
wordpress:
image: wordpress:6.9-php8.1-apache
restart: always
ports:
- "8100:80"
environment:
WORDPRESS_DB_HOST: "${WORDPRESS_DB_HOST}"
WORDPRESS_DB_USER: "${WORDPRESS_DB_USER}"
WORDPRESS_DB_PASSWORD: "${WORDPRESS_DB_PASSWORD}"
WORDPRESS_DB_NAME: "${WORDPRESS_DB_NAME}"
WORDPRESS_TABLE_PREFIX: "${WORDPRESS_TABLE_PREFIX}"
WORDPRESS_HOME: "${WORDPRESS_HOME}"
WORDPRESS_SITEURL: "${WORDPRESS_SITEURL}"
WORDPRESS_DEBUG: "${WORDPRESS_DEBUG}"
volumes:
- ./wp-content:/var/www/html/wp-content
- ./wp-config.php:/var/www/html/wp-config.php
- ./config/php.ini:/usr/local/etc/php/conf.d/php.ini
composer:
image: composer:latest
working_dir: /var/www/html
volumes:
- ./:/var/www/html
command: install --no-dev --prefer-dist --optimize-autoloader
db:
image: mysql:8.0
restart: always
environment:
MYSQL_DATABASE: "${WORDPRESS_DB_NAME}"
MYSQL_USER: "${WORDPRESS_DB_USER}"
MYSQL_PASSWORD: "${WORDPRESS_DB_PASSWORD}"
MYSQL_ROOT_PASSWORD: root
volumes:
- db:/var/lib/mysql
- ./db-init:/docker-entrypoint-initdb.d
adminer:
image: adminer
restart: always
ports:
- "8180:8080"
volumes:
uploads:
db:
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment