Skip to content
This repository has been archived by the owner on Jul 30, 2020. It is now read-only.

Commit

Permalink
Update the README, add warning to docker-compose setup
Browse files Browse the repository at this point in the history
  • Loading branch information
gwicke committed Dec 23, 2015
1 parent 0c6c600 commit 09c385e
Show file tree
Hide file tree
Showing 3 changed files with 42 additions and 29 deletions.
61 changes: 37 additions & 24 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,17 +5,40 @@ Mathoid & other services.

## Requirements

You need `docker` >= 1.6. On a recent Debian or Ubuntu distribution (Jessie,
Sid), this can be installed with `apt-get install docker.io`. See [the Docker
install instructions](https://docs.docker.com/engine/installation/) for other
platforms.
- KVM or similar VM with at least 512mb RAM. These can be had from a variety
of vendors for around $5/month. [This comparison from
ServerBear](http://serverbear.com/compare?Sort=BearScore&Order=desc&Server+Type=VPS&Monthly+Cost=-&HDD=-&RAM=500000000-&BearScore=-&Virtualization=KVM)
lists some popular options. Any [labs
instance](https://www.mediawiki.org/wiki/Wikimedia_Labs#Open_access) will
work as well.
- Distribution: One of
- Debian 8.0 Jessie or newer, or
- Ubuntu 15.04 or newer, or
- arbitrary systemd-based distro with git and [docker >=
1.6](https://docs.docker.com/engine/installation/) installed.
- Root shell.
- Port 80 available (TODO: automatically switch to alternative ports).

## Installation

On Debian and Ubuntu, the fastest installation method is this one-liner:
```bash
curl https://raw.githubusercontent.com/wikimedia/mediawiki-containers/master/mediawiki-containers | sudo bash
```

Alternatively, you can check out this repository, and run `sudo
./mediawiki-containers install` the checkout.

The installer mode will prompt you for
- the domain to use, and
- whether to enable automatic nightly updates.

The minimum hardware requirements are a KVM or similar VM with 512M RAM. These
can be had from a variety of vendors for around $5/month. [This
comparison from ServerBear lists some
options](http://serverbear.com/compare?Sort=BearScore&Order=desc&Server+Type=VPS&Monthly+Cost=-&HDD=-&RAM=500000000-&BearScore=-&Virtualization=KVM).
It will set up a systemd unit, so that your MediaWiki install automatically
starts on boot. [Here is a
transcript](https://gist.github.com/gwicke/656d30a934e5f956747b) of an
installer run.

## Description
## Architecture

Running `sudo ./mediawiki-containers start` in a checkout of this repository will
start four containers:
Expand All @@ -41,7 +64,7 @@ http://localhost/.
All data is stored outside the containers in a host directory:

```bash
ls /var/lib/mediawiki-containers/
ls /srv/mediawiki-containers/data
mediawiki mysql node-services
```

Expand All @@ -50,9 +73,12 @@ startup, which means that updating to a newer version of the entire setup is as
easy as a restart:

```bash
sudo ./mediawiki-containers restart
sudo service mediawiki-containers restart
```

Building on this upgrade-by-default approach, the installer can optionally set
up fully automatic nightly upgrades by setting up a one-line cron job.

## Status & next steps

This is alpha quality software. The basic functionality of MediaWiki, services
Expand All @@ -76,16 +102,3 @@ Next steps:
- Profit.

Tell us about your ideas at https://phabricator.wikimedia.org/T92826.

### Alternative to the shell script: `docker-compose`

This project also provides an equivalent `docker-compose` configuration, which
can be used by executing `docker-compose up`. A nice thing about using
docker-compose is a very slightly cleaner configuration, and merged output from
all containers.

A downside is its lacking support for parametrizing the docker network IP. It
turns out that docker on older distributions like Jessie uses a different
network than newer distros, which makes it difficult to support DNS resolution
in both using the same `docker-compose` config. The provided configuration
assumes a recent distribution, so won't work on Jessie out of the box.
4 changes: 4 additions & 0 deletions docker-compose.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# WARNING: This is lacking several of the features of ./mediawiki-containers,
# and is thus not currently the recommended installation method. It is not
# currently maintained. Use at your own risk.
#
# Run MediaWiki, RESTBase & Parsoid using `docker-compose up`

mediawiki:
Expand Down
6 changes: 1 addition & 5 deletions lib/install.sh
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
#!/bin/bash

# mediawiki-containers installer
#
# Usage:
# curl https://raw.githubusercontent.com/wikimedia/mediawiki-containers/master/install.sh \
# | sudo bash
# mediawiki-containers installer utils
#

set -e
Expand Down

0 comments on commit 09c385e

Please sign in to comment.