Setting up MediaWiki using Docker Compose and Mariadb

From JohnHobson.ws
Revision as of 03:34, 23 November 2024 by John (talk | contribs)
Jump to navigation Jump to search

Back to Homepage

WORK IN PROGRESS NOT FINISHED YET

PREFACE - I am going to assume that you already have a server/PC with Linux installed. You will also need Docker and Docker-Compose installed

I found it a little hard to setup MediaWiki for the first time using Docker and getting all the database working correctly. I have now run a few instances of it and decided to write a short post on getting it working

1 - First we need to create our directory. For this test we will be using /home/john/docker/testwiki

2 - Inside this folder we need to create a file named docker-compse.yml and copy the following into it

# MediaWiki with MariaDB
#
# Access via "http://localhost:8080"
#   (or "http://$(docker-machine ip):8080" if using docker-machine)
version: '3'
services:
  mediawiki:
    image: mediawiki
    restart: always
    ports:
      - 4820:80
    links:
      - database
    volumes:
      - /home/john/docker/testwiki/images:/var/www/html/images
      # After initial setup, download LocalSettings.php to the same directory as
      # this yaml and uncomment the following line and use compose to restart
      # the mediawiki service
      #- /home/john/docker/testwiki/LocalSettings.php:/var/www/html/LocalSettings.php
  # This key also defines the name of the database host used during setup instead of the default "localhost"
  database:
    image: mariadb
    restart: always
    ports:
      - 4840:3306
    environment:
      # @see https://phabricator.wikimedia.org/source/mediawiki/browse/master/includes/DefaultSettings.php
      MYSQL_DATABASE: testwikidb
      MYSQL_USER: testwikiuser
      MYSQL_PASSWORD: testwikipassword
      MYSQL_RANDOM_ROOT_PASSWORD: 'yes'
    volumes:
      - /home/john/docker/testwikidb/db:/var/lib/mysql

volumes:
  images:
  db: