Ceci est une ancienne révision du document !
en cours de test
Dokuwiki n'est pas encore compatible avec PHP 8.x, donc je vais le faire tourner dans un conteneur disposant de PHP 7.x.
Source: https://loganmarchione.com/2022/03/the-best-way-to-run-dokuwiki-in-docker/
Décompresser une copie archivée du wiki dans un nouveau dossier :
sudo mkdir /var/www/dokuwiki cd /var/www/dokuwiki sudo unzip /home/marc/backup-de-mon-wiki-AAAAMMJJ.zip sudo chown -R www-data:www-data /var/www/dokuwiki
Dans ce dossier, créer un fichier docker-compose.yml :
version: '3' services: dokuwiki: container_name: dokuwiki image: php:7-apache-bullseye restart: unless-stopped ports: - '8888:80' volumes: - '/var/www/dokuwiki:/var/www/html'
ports
Le port 80 du conteneur est redirigé vers le port 8888
volumes
Le dossier /var/www/html du conteneur est redirigé vers le dossier /var/www/dokuwiki
Ensuite lancer docker-compose
docker-compose up
Lorsque l'image a été démarrée, visiter le site http://ADRESSE-DU-SERVEUR:8888
En test
Créer un fichier /etc/systemd/system/docker-dokuwiki.service :
[Unit] Description=Docker Dokuwiki Requires=docker.service After=docker.service [Service] Type=oneshot RemainAfterExit=yes WorkingDirectory=/var/www/dokuwiki ExecStart=/usr/bin/docker-compose up -d ExecStop=/usr/bin/docker-compose down TimeoutStartSec=0 [Install] WantedBy=multi-user.target
Lancer cette commande pour activer le nouveau service :
sudo systemctl enable docker-dokuwiki
Apache sur le serveur hôte doit rediriger vers le conteneur.
Vérifier que le module proxy est activé :
sudo apache2ctl -M
Sinon l'activer :
sudo a2enmod proxy sudo systemctl restart apache2
Créer un VirtualHost pour le site DokuWiki dockerisé :