forked from coop-cloud/mediawiki
The collaborative editing software that runs Wikipedia, for Social Coop.
.drone.yml | ||
.envrc.sample | ||
.gitignore | ||
compose.mailrelay.yml | ||
compose.openid.yml | ||
compose.simplesaml.yml | ||
compose.yml | ||
composer.local.json.tmpl | ||
entrypoint.sh.tmpl | ||
entrypoint.simplesaml.sh.tmpl | ||
htaccess.tmpl | ||
LICENSE | ||
LocalSettings.php.tmpl | ||
README.md | ||
renovate.json |
Mediawiki
Mediawiki version 1.35
Requires Docker version 1.11.2 or above to run.
Based on mediawiki
.
- Set up Docker Swarm and
abra
- Deploy
coop-cloud/traefik
cp .envrc.sample .envrc
- Edit
.envrc
- be sure to change$DOMAIN
to something that resolves to your Docker swarm box direnv allow
(orsource .envrc
)- Generate secrets:
abra secret_generate db_password v1 abra secret_generate db_root_password v1 abra secret_generate mediawiki_secret_key v1 "pwgen -n 64 1"
abra deploy
- Create an initial admin user:
abra run app php /var/www/html/maintenance/createAndPromote.php --sysop YourUsername YourPassword
- Edit
.envrc
and uncomment theSMTP
lines. SetSMTP_HOST
topostfix_relay
forcoop-cloud/postfix_relay
, ormailu_front
forcoop-cloud/mailu
(assuming default stack names) - For
postfix_relay
, add the domain to your email config –EXTRA_SENDER_DOMAINS
inpostfix_relay
. This doesn't seem to be required for Mailu. direnv allow
(orsource .envrc
)abra deploy
Single Sign On
SimpleSAMLphp
This app includes optional SAML Single Sign On using
SimpleSAMLphp and Mediawiki's
Extension:SimpleSAMLphp, based on the
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!
- Edit
.envrc
and uncomment lines in theSAML
section (includingCOMPOSE_FILE
) direnv allow
- Generate secrets:
abra secret_generate saml_admin_password v1 abra secret_generate saml_secret_salt v1 "pwgen -n 64 1"
abra deploy
- Copy your SimpleSAMLphp metadata and certificates to the container (assuming
you have local
metadata
andcert
folders:abra cp metadata simplesaml:/var/simplesamlphp/ abra cp cert simplesaml:/var/simplesamlphp/
- You can log into SimpleSAMLphp using the password you generated at https://$DOMAIN/simplesaml/ and test authentication
- Edit SimpleSAMLphp's
config.php
and changestore.sql.dsn
:abra run simplesaml vi /var/simplesamlphp/config/config.php # find 'store.sql.dsn' and edit to: # 'sqlite:/var/simplesamlphp/data/simplesamlphp.sq3'
OpenID Connect
- Edit
.envrc
and uncomment lines in theOPENID
section (includingCOMPOSE_FILE
) direnv allow
- Store your Keycloak-generated client secret in Docker:
abra secret insert openid_client_secret v1 put-your-secret-here
abra deploy
License
MIT License