Install Multiple Wordpress In One Stack In Docker

Intro

I haven't tried this yet. But the rest of the explanations can be found here.

The Docker-Compose Code

version: '3'

services:
  db:
    image: mysql:5.7
    platform: linux/amd64
    volumes:
      - db_data:/var/lib/mysql
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: password
      MYSQL_DATABASE: wordpress-site1
      MYSQL_USER: wordpress-site1
      MYSQL_PASSWORD: wordpress-site1
    networks:
      - wpsite

  phpmyadmin:
    depends_on:
      - db
    image: phpmyadmin/phpmyadmin
    restart: always
    ports:
      - '8080:80'
    environment:
      PMA_HOST: db
      MYSQL_ROOT_PASSWORD: password 
    networks:
      - wpsite

  wordpress-site1: # Wordpress site 1
    depends_on:
      - db
    image: wordpress:latest
    ports:
      - '8000:80' # This site will be accessible on localhost:8000
    restart: always
    volumes: ['./site-1:/var/www/html'] # Set different path on host
    environment:
      WORDPRESS_DB_HOST: db:3306
      WORDPRESS_DB_NAME: wordpress-site1
      WORDPRESS_DB_USER: wordpress-site1
      WORDPRESS_DB_PASSWORD: wordpress-site1
    networks:
      - wpsite
  wordpress-site2: # Wordpress site 2
    depends_on:
      - db
    image: wordpress:latest
    ports:
      - '8001:80' # This site will be accessible on localhost:8001
    restart: always
    volumes: ['./site-2:/var/www/html'] # Set different path on host
    environment:
      WORDPRESS_DB_HOST: db:3306
      WORDPRESS_DB_NAME: wordpress-site2
      WORDPRESS_DB_USER: wordpress-site2
      WORDPRESS_DB_PASSWORD: wordpress-site2
    networks:
      - wpsite
  # Other wordpress instances

networks:
  wpsite:
volumes:
  db_data:

note/install-multiple-wordpress-in-one-stack-in-docker.txt · Last modified: 03/08/22 2:23 pm by Jotter