Page MenuHomePhabricator

Tech review of the existing installation instructions
Closed, ResolvedPublic

Description

We need to take a look at https://www.mediawiki.org/wiki/Wikibase/Suite and https://www.mediawiki.org/wiki/Wikibase/Docker, then indicate to the Tech Writer whether any of the instructions are now incomplete or incorrect.

Note to engineer:

  • It is unlikely the manual install instructions will have changed much
  • Should prioritise reviewing the Docker instructions for changes

Event Timeline

Samantha_Alipio_WMDE renamed this task from Tech review of the existing installation instructions. to Tech review of the existing installation instructions.Mar 23 2021, 3:39 PM

@danshick-wmde some notes after reviewing the Docker installation instructions

I think the Docker Documentation looks good except for the following.

  1. we are pointing to the old docker-compose.yml file and there is currently no such up-to-date thing in the wikibase-release-pipeline so we need to add that and point to something new.
  2. I don't think we should suggest running it with sudo rather pointing to something that explains how to add the user to the docker group
  3. The old docker-compose.yml has all passwords and secrets written in the docker-compose.yml file I suggest we drop that pattern and keep those in env files, this is done in the suggested PR but the installation instructions would need to mention how to use this.
  4. I think we need to bump the memory required as I don't think the added elasticsearch will play nicely with this minimum not sure what would be considered a minimum requirement now though.

These suggestions are quite welcome. The docker documentation page is extremely old and out of date.

  1. This is great info -- the fact that we will now be providing only an *example* docker-compose.yml file is a game-changer for this documentation, which to date has offered basically a one-liner to get a minimal Wikibase going with very little knowledge of Docker.
  2. Sounds good, and along with 1) this indicates we'll need to provide a Docker primer, or robust links to some very applicable Docker how-tos.
  3. The transition to env files is not clear to me on a first quick glance at that PR, but as the very sound security practice that it is, I will document the heck out of it as soon as I see how you've done it.
  4. I'm sure ES is just one of the considerations for our final memory recommendation. Thanks for the heads-up!

These suggestions are quite welcome. The docker documentation page is extremely old and out of date.

  1. This is great info -- the fact that we will now be providing only an *example* docker-compose.yml file is a game-changer for this documentation, which to date has offered basically a one-liner to get a minimal Wikibase going with very little knowledge of Docker.

If you look at what was previously provided and what we could offer now you can see this isn't really a game changer as they are pretty much the same thing except for the the fact that the env variables are now separated from the docker-compose.yml. I've created T279538 to track this docker-compose.yml example file.

Ok after a couple of days chatting about how automated / what the downsides of the existing examples are and how people are using it. This is what the proposed example looks like.

  • We still support a simple docker-compose up (with some env file configuration) to run a Wikibase and mysql instance.
  • In order to make the decision on what additional services to run a bit more conscious, these have been separated into docker-compose.extra.yml (wdqs, wdqs-frontend, elasticsearch, quickstatements)

By following the example installation instructions -> https://github.com/wmde/wikibase-release-pipeline/pull/117/files#diff-bc501e6e1e9420017b2d954e834fd8c3afb7daf9e2eb780c46c491099a7c2f0e

The user would need to take 2 actions to get all the services to run without any additional configuration.

  1. rename docker-compose.extra.yml -> docker-compose.override.yml to make docker-compose include this when running docker-compose up. Alternatively this could also be executed as docker-compose -f docker-compose.yml -f docker-compose.extra.yml up
  2. uncomment extra-install scripts that sets up elasticsearch and quickstatements.

No movement since ~4 weeks, so I dare to say that developers consider documentation complete enough

FWIW the Docker install instructions have not been updated yet with the new info (I marked the page as outdated). They will be updated by end of week if not tomorrow.