docs: add how to update mediawiki image
All checks were successful
Build docker image / build-image (push) Successful in 3m6s

This commit is contained in:
teutat3s 2024-01-08 14:08:44 +01:00
parent 5c88d9ce3e
commit c69c11e6c9
Signed by: teutat3s
GPG key ID: 4FA1D3FA524F22C1

View file

@ -1,11 +1,53 @@
# Mediawiki docker image with OIDC extension # Mediawiki docker image with OIDC extension
This image is based on the community maintained [mediawiki docker image](https://hub.docker.com/_/mediawiki).
Currently used mediawiki extensions in this customized docker image:
* [PluggableAuth](https://www.mediawiki.org/wiki/Extension:PluggableAuth)
* [OpenID_Connect](https://www.mediawiki.org/wiki/Extension:OpenID_Connect)
* [TemplateStyles](https://www.mediawiki.org/wiki/Extension:TemplateStyles)
### Updating the docker image ### Updating the docker image
Check for [new releases of mediawiki](https://www.mediawiki.org/wiki/Download)
and take a moment to read the release notes. For a good starting point, read the
[upgrading manual](https://www.mediawiki.org/wiki/Manual:Upgrading)
though we use a very customized docker image and all steps necessary for
upgrading will be mentioned here. You should also check if the newest release
is already [published as a docker image](https://hub.docker.com/_/mediawiki)
by the community.
First, update the `FROM` image tag in the `Dockerfile` to the newest version,
for example `1.41.0`.
Next, download the newest version of each extension (matching the mediawiki docker
image version, e.g. `1.41.0`) and get the SHA256 hash for each file:
1. PluggableAuth download https://www.mediawiki.org/wiki/Special:ExtensionDistributor/PluggableAuth
2. OpenID_Connect download https://www.mediawiki.org/wiki/Special:ExtensionDistributor/OpenIDConnect
3. TemplateStyles download https://www.mediawiki.org/wiki/Special:ExtensionDistributor/TemplateStyles
```
NEW_PLUGGABLE_AUTH_HASH=$(sha256sum ~/Downloads/PluggableAuth-REL1_41-0273c84.tar.gz | cut -d " " -f1)
sed -i "s/PLUGGABLE_AUTH_SHA256SUM= *[^ ]*/PLUGGABLE_AUTH_SHA256SUM=${NEW_PLUGGABLE_AUTH_HASH}/" Dockerfile
NEW_OPENID_CONNECT_HASH=$(sha256sum ~/Downloads/OpenIDConnect-REL1_41-7aa039e.tar.gz | cut -d " " -f1)
sed -i "s/OPENID_CONNECT_SHA256SUM= *[^ ]*/OPENID_CONNECT_SHA256SUM=${NEW_OPENID_CONNECT_HASH}/" Dockerfile
NEW_TEMPLATE_STYLE_HASH=$(sha256sum ~/Downloads/TemplateStyles-REL1_41-a9dde29.tar.gz | cut -d " " -f1)
sed -i "s/TEMPLATE_STYLES_SHA256SUM= *[^ ]*/TEMPLATE_STYLES_SHA256SUM=${NEW_TEMPLATE_STYLE_HASH}/" Dockerfile
```
Copy the hash in the output of each command and paste it into the variables
`*_SHA256SUM` in `Dockerfile`, replacing the old hashes.
After making your changes and [testing them locally](#local-testing), run the After making your changes and [testing them locally](#local-testing), run the
following to trigger a [CI build and push](https://git.pub.solar/pub-solar/mediawiki-oidc-docker/actions) following to trigger a [CI build and push](https://git.pub.solar/pub-solar/mediawiki-oidc-docker/actions)
of the [docker image](https://git.pub.solar/pub-solar/mediawiki-oidc-docker/packages). of the [docker image](https://git.pub.solar/pub-solar/mediawiki-oidc-docker/packages).
``` ```
git add -u git add --update
git commit git commit
git push git push
``` ```
@ -14,9 +56,7 @@ git push
Build the docker image locally to test your changes. Build the docker image locally to test your changes.
``` ```
docker build --tag git.pub.solar/pub-solar/mediawiki-oidc-docker:test . docker build --tag git.pub.solar/pub-solar/mediawiki-oidc-docker:test .
docker run --detach --rm --publish 8080:80 git.pub.solar/pub-solar/mediawiki-oidc-docker:test
# open http://localhost:8080 in your browser to test if mediawiki starts fine
``` ```
### Links
- https://github.com/wikimedia/mediawiki-docker
- https://www.mediawiki.org/wiki/Extension:OpenID_Connect