2020-09-04 23:59:00 +00:00
|
|
|
# Mediawiki
|
|
|
|
|
2020-10-24 13:46:39 +00:00
|
|
|
[![Build Status](https://drone.autonomic.zone/api/badges/coop-cloud/mediawiki/status.svg)](https://drone.autonomic.zone/coop-cloud/mediawiki)
|
2020-10-05 23:34:57 +00:00
|
|
|
|
2020-10-24 13:46:39 +00:00
|
|
|
Mediawiki [version 1.35][mediawiki-1.35]
|
2020-09-04 23:59:00 +00:00
|
|
|
|
2020-09-07 23:38:20 +00:00
|
|
|
Requires Docker version 1.11.2 or above to run.
|
2020-09-04 23:59:00 +00:00
|
|
|
|
2020-10-24 13:46:39 +00:00
|
|
|
Based on [`mediawiki`][mediawiki].
|
2020-09-04 23:59:00 +00:00
|
|
|
|
2020-09-07 23:38:20 +00:00
|
|
|
1. Set up Docker Swarm and [`abra`][abra]
|
2020-10-24 13:46:39 +00:00
|
|
|
2. Deploy [`coop-cloud/traefik`][traefik]
|
2020-10-19 14:50:47 +00:00
|
|
|
3. `cp .envrc.sample .envrc`
|
|
|
|
4. Edit `.envrc` - be sure to change `$DOMAIN` to something that resolves to
|
2020-09-07 23:38:20 +00:00
|
|
|
your Docker swarm box
|
2020-10-24 17:01:17 +00:00
|
|
|
5. `direnv allow` (or `source .envrc`)
|
2020-10-19 14:50:47 +00:00
|
|
|
6. Generate secrets:
|
2020-09-19 10:09:49 +00:00
|
|
|
```
|
|
|
|
abra secret_generate db_password v1
|
|
|
|
abra secret_generate db_root_password v1
|
2020-09-22 18:12:24 +00:00
|
|
|
abra secret_generate mediawiki_secret_key v1 "pwgen -n 64 1"
|
2020-09-19 10:09:49 +00:00
|
|
|
```
|
2020-10-24 13:46:39 +00:00
|
|
|
7. `abra deploy`
|
|
|
|
8. Create an initial admin user:
|
2020-10-24 01:56:05 +00:00
|
|
|
`abra run app php /var/www/html/maintenance/createAndPromote.php --sysop YourUsername YourPassword`
|
2020-09-16 20:19:23 +00:00
|
|
|
|
2020-09-18 21:30:16 +00:00
|
|
|
## SimpleSAMLphp
|
2020-09-16 20:19:23 +00:00
|
|
|
|
2020-09-18 21:30:16 +00:00
|
|
|
This app includes optional SAML Single Sign On using
|
|
|
|
[SimpleSAMLphp][simplesamlphp] and Mediawiki's
|
|
|
|
[Extension:SimpleSAMLphp][mw-simplesamlphp], based on the
|
|
|
|
[`venatorfox/simplesamlphp`][venatorfox-simplesamlphp] image.
|
|
|
|
|
|
|
|
NOTE: currently, if you enable SAML then it'll disable Mediawiki's own user account
|
|
|
|
system. Patches to make this configurable are welcome!
|
|
|
|
|
2020-10-05 23:32:46 +00:00
|
|
|
1. Edit `.envrc` and uncomment lines in the `SAML` section (including `COMPOSE_FILE`)
|
2020-09-18 21:30:16 +00:00
|
|
|
2. `direnv allow`
|
|
|
|
3. Generate secrets:
|
|
|
|
```
|
|
|
|
abra secret_generate saml_admin_password v1
|
2020-09-22 18:12:24 +00:00
|
|
|
abra secret_generate saml_secret_salt v1 "pwgen -n 64 1"
|
2020-09-18 21:30:16 +00:00
|
|
|
```
|
|
|
|
4. `abra deploy`
|
|
|
|
5. Copy your SimpleSAMLphp metadata and certificates to the container (assuming
|
|
|
|
you have local `metadata` and `cert` folders:
|
|
|
|
```
|
2020-09-22 18:12:24 +00:00
|
|
|
abra cp metadata simplesaml:/var/simplesamlphp/
|
|
|
|
abra cp cert simplesaml:/var/simplesamlphp/
|
2020-09-18 21:30:16 +00:00
|
|
|
```
|
|
|
|
6. You can log into SimpleSAMLphp using the password you generated at
|
|
|
|
https://$DOMAIN/simplesaml/ and test authentication
|
|
|
|
7. Edit SimpleSAMLphp's `config.php` and change `store.sql.dsn`:
|
|
|
|
```
|
2020-09-22 18:12:24 +00:00
|
|
|
abra run simplesaml vi /var/simplesamlphp/config/config.php
|
2020-09-18 21:30:16 +00:00
|
|
|
# find 'store.sql.dsn' and edit to:
|
|
|
|
# 'sqlite:/var/simplesamlphp/data/simplesamlphp.sq3'
|
|
|
|
```
|
2020-09-04 23:59:00 +00:00
|
|
|
|
2020-10-19 14:50:47 +00:00
|
|
|
## OpenID Connect
|
|
|
|
|
|
|
|
1. Edit `.envrc` and uncomment lines in the `OPENID` section (including `COMPOSE_FILE`)
|
|
|
|
1. `direnv allow`
|
|
|
|
1. Get your Keycloak generated client secret and `docker secret create` it as `openid_client_secret`
|
|
|
|
|
2020-09-04 23:59:00 +00:00
|
|
|
## License
|
|
|
|
|
|
|
|
MIT License
|
2020-09-07 23:38:20 +00:00
|
|
|
|
2020-10-24 13:46:39 +00:00
|
|
|
[mediawiki-1.35]: https://www.mediawiki.org/wiki/Release_notes/1.35
|
2020-09-07 23:38:20 +00:00
|
|
|
[abra]: https://git.autonomic.zone/autonomic-cooperative/abra
|
2020-10-24 13:46:39 +00:00
|
|
|
[traefik]: https://git.autonomic.zone/coop-cloud/traefik
|
|
|
|
[mediawiki]: https://hub.docker.com/_/mediawiki
|
2020-09-18 21:30:16 +00:00
|
|
|
[simplesamlphp]: https://simplesamlphp.org/
|
|
|
|
[mw-simplesamlphp]: https://www.mediawiki.org/wiki/Extension:SimpleSAMLphp
|
|
|
|
[venatorfox-simplesamlphp]: https://hub.docker.com/r/venatorfox/simplesamlphp
|