MediaWiki-Docker

MediaWiki-Docker is a Docker based development environment included with MediaWiki core. It is intended for light-weight and simple development use-cases, although it can be extended to provide a more complex development environment.

= Quick start =

At a high level, getting set up involves:


 * 1) Installing dependencies (Docker and docker-compose)
 * 2) Cloning the MediaWiki core repository
 * 3) Starting   in the core directory
 * 4) Setting up the MediaWiki database via the command-line

Please see  in MediaWiki core to get started.

= Configuration recipes =

This page contains configuration recipes that can be used with MediaWiki core's Docker development environment.

docker-compose stacks can be extended with a  file that resides in the same directory (at the root of MediaWiki core, in our case) as the   file. Any configuration present in that file will override the defaults in. More documentation on overriding works is available at https://docs.docker.com/compose/extends/

After updating your override file, run  followed by.

Below is a complete override file that provides a Redis and ElasticSearch containers, along with overriding the user mapping and the XDebug configuration for the app container.

Enable development settings
You probably want to enable MediaWiki's development settings. Log files will be generated in  and.

Disable XDebug for better performance
If you are not working on backend code or don't need to set breakpoints, you can use a Docker image that has XDebug disabled, which can boost performance.

Mail handling
You can capture outgoing email with MailHog. The mail interface is accessible at http://localhost:8025/

Ngrok
You can use ngrok to share your local site with others. After installing, run. Whatever URL is shown to you needs to be set in your.

Performance profiling with XHProf
You can use XHProf to profile requests.

TODO: Adapt something from https://github.com/perftools/xhgui/blob/master/docker-compose.yml