Setting up MediaWiki using Docker Compose and Mariadb
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: Setting up directory and docker-compose.yml file
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 docker-compose file # # Access via "http://localhost:4820" # or "http://serveripaddress:4820" if using docker-machine or accessing from another PC # # MariaDB accessed via "http://localhost:4840" # or "http://serveripaddress:4840" if using docker-machine or accessing from another PC 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:
2: Running the compose file
1 - Navigate to where your docker-compose.yml file is and type the following
docker-compose up -d
john@server:~/docker/testwiki$ docker-compose up -d Creating network "testwiki_default" with the default driver Creating volume "testwiki_images" with default driver Creating volume "testwiki_db" with default driver Creating testwiki_database_1 ... done Creating testwiki_mediawiki_1 ... done john@server:~/docker/testwiki$
2 - Once docker has download the required images it will setup mediawiki and mariadb as required
3 - The compose file will create a new directory for mariadb
/home/john/docker/testwikidb