~~NOTOC~~ ====== Une ferme de wikis à l'IAS ====== Le wiki utilisé est Dokuwiki Une ferme de wikis est constituée d'un wiki principal (le fermier), et en parallèle, un répertoire (la grange) qui contient des instances du wiki principal (les animaux). Voici l'arborescence de fichiers du fermier, lequel est accessible à l'url dokuwiki.ias.u-psud.fr /www/iasext/dokufarmer ------------------------ | | ------------------------ | | | | | bin conf data inc lib Voici l'arborescence de la grange, elle est constituée des petits wikis, lesquels ne contiennent que les répertoires “conf“ et “data“. Ils héritent de toutes les ressources logicielles du fermier (templates, plugins, etc.) comme s'ils étaient des wikis à part entière. /www/iasext/dokuwikis ----------------------- | | ------------------------- micode docinfo tips | | | ----- ----- ----- | | | | | | conf data conf data conf data La configuration adoptée ici, impose que le wiki fermier et la grange (les wikis animaux) soient situés au même niveau de répertoires . ===== Fichiers à configurer ===== J'ai seulement modifié dans dokufarmer/inc/preload.php la ligne $farm = '/www/iasext/dokuwikis'; Voici le fichier preload.php : {{:web:preload.php.pdf|}} Et puis voici Le script pour créer un wiki /usr/local/bin/ {{:web:addanimal.sh.pdf|addanimal.sh}} ===== Comment crée-t-on un nouveau wiki ? ===== 1) cd /www/iasext/dokuwikis 2) addanimal.sh nomduwiki.ias.u-psud.fr 3) Au niveau DNS on ajoute le CNAME “nomduwiki“ puis on fait un ./restart 3) Au niveau Apache on ajoute un site virtualhost “nomduwiki.prod“ dans /etc/apache2/sites_available 4) a2ensite nomduwiki.prod 5) service apache2 reload ===== Les plugins ===== ==== Sécurité ==== L'installation des plugins ne doit pas être autorisée aux "petits wikis"... Donc, on désactive le lien "Gestionnaire des extensions" dans le panneau Admin en faisant : touch /www/dokufarmer/lib/plugins/plugin/disabled ==== Besoin d'installer un plugin ? ==== 1) cd /www/dokufarmer/lib/plugins 2) wget url_du_site/nomduplugin.zip 3) unzip nomduplugin.zip ==== On ne veut pas d'un plugin “toto“ ? ==== 1) Pas de problème... On fait : cd /www/iasext/dokuwikis/nomduwiki/ 2) on ajoute dans plugins.local.php la ligne $plugins['toto'] = 0; ===== Le tutoriel qui m'a servi ===== Un excellent tutoriel qui m'a bien aidé... [[http://www.generation-linux.fr/index.php?post/2009/12/23/Creer-une-ferme-de-wikis-avec-Dokuwiki|Créer une ferme de wikis avec Dokuwiki]] ===== Comment fait-t-on les mises à jour du wiki ===== L'avantage notable de ce système de wiki est que seul le wiki principal à besoin d'être mis à jour; on ne touche pas aux instances du wiki principal . Voici la méthode que j'utilise : En fait, je fais une installation complète de la nouvelle version URL utilisée : dokudev.ias.u-psud.fr DocumentRoot : /www/iasext/dokudev 1) cd /www/iasext 2) mv ./dokudev ./dokudev.OK (pour revenir en arrière en cas de besoin.) 3) tar xvfz dokuwiki-stable.tgz (ça donne dokuwiki-2013-12-08 ) 4) mv dokuwiki-2013-12-08 dokudev 5) cd dokudev/lib/plugins 6) On fait un rsync des plugins qui sont dans /www/iasext/dokufarmer/lib/plugins rsync -av /www/iasext/dokufarmer/lib/plugins/nom-plugin/ ./nom-plugin 7) On fait un rsync des templates personnalisés qui sont dans /www/iasext/dokufarmer/lib/tpl/ rsync -av /www/iasext/dokufarmer/lib/tpl/nom-template/ ./nom-template 8) On renomme le wiki principal dokufarmer en dokufarmer.OK ou autre cd /www/iasext/; mv dokufarmer dokufarmer.OK (si on a besoin de revenir en arrière) 9) On rsync dokudev vers dokufarmer. rsync -av ./dokudev/ ./dokufarmer/