Dockerfile for running a MediaWiki server via Apache-PHP. #krash
Charles Reid c34ebb7d54 update charlesreid1 config to include jinja templates 2 weeks ago
attic Moving build/run for standalone Docker image to attic/ 11 months ago
charlesreid1-config @ 41c1f9c347 update charlesreid1 config to include jinja templates 2 weeks ago
docs add links to front matter, fix a link 10 months ago
mkdocs-material @ b0c6890853 Update mkdocs-material for mkdocs 1.0 7 months ago
.gitignore updating gitignore 11 months ago
.gitmodules init version of documentation 11 months ago
Dockerfile clarify 4 weeks ago
LICENSE Adding initial readme and license 1 year ago update readme 11 months ago add notes on how to upgrade skins 2 months ago add clean script 1 year ago Adding makefile instructions to readme 1 year ago arg. stupid workarounds. 11 months ago arg. stupid workarounds. 11 months ago Adding makefile instructions to readme 1 year ago
mkdocs.yml Update mkdocs.yml for mkdocs 1.0 7 months ago


This is the MediaWiki docker container used to run MediaWiki on

This container also runs an Apache web server and a PHP engine.

You should not run this container by itself (see pod-charlesreid1).


This directory contains a Dockerfile that modifies the official MediaWiki docker container. Before launching the container, it specifies /var/www/html as a mounted volume, and it copies LocalSettings.php, the MediaWiki config file, from this repo into the container.

See d-mysql repo.

Also see pod-charlesreid1 for a working pod using this container.

Docker Compose

To use this container as part of a pod, as with the wiki, see pod-charlesreid1-wiki.


If you are seeing 404s on every page you try, it may be because your MediaWiki config file is set to redirect you to /wiki/Main_Page but your web server is not set up to handle it.

See this lin and the guide for apache and nginx.

Updating Settings

The LocalSettings.php file must be copied into the container, because we will end up bind-mounting the entire MediaWiki directory when the container is run and we can’t bind-mount a file inside a bind-mounted directory.

Thus, to update LocalSettings.php, skins, or extensions, you will need to re-make the Docker container. Use the make rules to remake the Docker container:

make clean
make build
make run


The submodule charlesreid1-config/ contains configuration files for both MediaWiki and Apache.

See the wiki/charlesreid1-config repo for details.

To clone the submodule when you clone the repo, include the --recursive flag:

git clone --recursive

To check out the submodule after a shallow clone:

git submodule init
# or 
git submodule update --init 

To fetch changes to the submodule from the submodule’s remote:

git submodule update --remote