====== Installation des logiciels via Docker sur Yilgarn ====== ===== Passbolt ===== Si nécessaire : * Se connecter au container : ''docker exec -it pwd-clapas-passbolt /bin/bash'' * Voir les commandes dispo : ''su -s /bin/bash -c "/usr/share/php/passbolt/bin/cake help" www-data'' * Vérifier que tout est ok : ''su -s /bin/bash -c "/usr/share/php/passbolt/bin/cake passbolt healthcheck" www-data'' * Gestion des clés JWT (**nécessaire pour l'appli mobile**) * Créer le dossier : ''mkdir -m=550 /etc/passbolt/jwt'' * Donner les bons droits : ''chown root:www-data /etc/passbolt/jwt/'' * Générer les clés JWT : ''su -s /bin/bash -c "/usr/share/php/passbolt/bin/cake passbolt create_jwt_keys" www-data'' * Migrer la base de données : ''su -s /bin/bash -c "/usr/share/php/passbolt/bin/cake passbolt migrate" www-data'' ===== Telegraf, InfluxDb, Grafana ===== * Afin que Telegraf puisse accéder au socket de Docker, lancer le ainsi: ''DOCKER_GID=$(stat -c '%g' /var/run/docker.sock) docker-compose up -d'' * Voir: https://github.com/influxdata/telegraf/issues/10031#issuecomment-955572318 * Attention, ce service consomme beaucoup de mémoire et utilise le Swap, en cas de problème, il peut être nécessaire de le désactiver... * Ressources pour la mise en place d'InfluxDb2 : * [[https://www.blackvoid.club/grafana-8-influxdb-2-telegraf-2021-monitoring-stack/|Création d'une stack Docker InfluxDb2, Grafana 8, Telegraf]] * [[https://ivanahuckova.medium.com/setting-up-influxdb-v2-flux-with-influxql-in-grafana-926599a19eeb|Configuration de la Datasource dans Grafana avec InfluxQL pour garder la compatibilité des Dashboard]] * [[https://docs.influxdata.com/influxdb/v2.0/tools/grafana/?t=InfluxQL| Configuration de la Datasource dans Grafana]] * [[https://docs.influxdata.com/influxdb/v2.0/query-data/influxql/?t=InfluxDB+API#map-unmapped-buckets| Mapper un bucket avec une database]] ===== Gramps Web ===== * Chercher le nom de l'arbre et le chemin vers la base : ''gramps -l'' * Ex. : Liste des arbres familiaux connus dans votre chemin de base de données /home/jpm/.gramps/grampsdb/5f1ed1f2 avec le nom « Jean-Pascal MILCENT » * Chercher le chemin de base vers les médias via l'appli Gramps, Éditions > Préférences > Général > Chemin de base pour les chemins relatifs des medias. * Ex. : ''/home/jpm/Data/Généalogie/Images'' * Copier le dossier (//5f1ed1f2//) contant base appli Gramps éteinte : cp -r /home/jpm/.gramps/grampsdb/5f1ed1f2 /home/jpm/workspace/docker/yilgarn/gramps.clapas.org/gramps-db/ * Copier les médias : cp -r /home/jpm/Data/Généalogie/Images/* /home/jpm/workspace/docker/yilgarn/gramps.clapas.org/gramps-media/ * Synchroniser le dossier local avec le serveur : rsync -av ./gramps.clapas.org/ admin@yilgarn:/home/admin/yilgarn/gramps.clapas.org/ * Sur le serveur, se placer dans le dossier //gramps.clapas.org// : ''cd ~/yilgarn/gramps.clapas.org/'' * Lors de l'initialisation créer un utilisateur avec les droits d'admin : docker-compose run gramps-web python3 -m gramps_webapi user add --fullname 'Jean-Pascal MILCENT' --email 'jpm@clapas.org' --role 4 jpmilcent * Démarrer le site : ''docker-compose up -d'' ===== Sauvegardes ===== ==== Sauvegarde rapide de Shaarli : bookmarks.clapas.org ==== * Se placer dans le dossier suivant : ''cd /home/admin/yilgarn/boomarks.clapas.org'' * Créer un dossier //backup// : ''mkdir backup'' * Sauvegarde du dossier ''/data'' : docker run --rm --volumes-from bookmarks.clapas.org_shaarli -v $(pwd)/backup:/backup bradynpoulsen/archive-utils /bin/bash -c "tar -cjf /backup/$(date +"%Y-%m-%d")_shaarli_data_backup.tar.bz2 /var/www/shaarli/data ; chown 1001:1001 /backup/*.bz2" * Vérifier sur l'hôte la présence du nouveau fichier ''.tar.bz2'' dans le dossier ''./backup/'' * Commande d'accès au container : ''docker exec -it bookmarks.clapas.org_shaarli /bin/sh'' ==== Sauvegarde rapide Dokuwiki : memos.clapas.org ==== * Se placer dans le dossier suivant : ''cd /home/admin/yilgarn/memos.clapas.org'' * Créer un dossier //backup// : ''mkdir backup'' * Créer successivement les sauvegardes avec les commandes : docker run --rm --volumes-from memos.clapas.org_dokuwiki -v $(pwd)/backup:/backup bradynpoulsen/archive-utils /bin/bash -c "tar -cjf /backup/$(date +"%Y-%m-%d")_data.tar.bz2 /var/www/html/data ; chown 1001:1001 /backup/*.bz2" docker run --rm --volumes-from memos.clapas.org_dokuwiki -v $(pwd)/backup:/backup bradynpoulsen/archive-utils /bin/bash -c "tar -cjf /backup/$(date +"%Y-%m-%d")_conf.tar.bz2 /var/www/html/conf ; chown 1001:1001 /backup/*.bz2" docker run --rm --volumes-from memos.clapas.org_dokuwiki -v $(pwd)/backup:/backup bradynpoulsen/archive-utils /bin/bash -c "tar -cjf /backup/$(date +"%Y-%m-%d")_plugins.tar.bz2 /var/www/html/lib/plugins ; chown 1001:1001 /backup/*.bz2" docker run --rm --volumes-from memos.clapas.org_dokuwiki -v $(pwd)/backup:/backup bradynpoulsen/archive-utils /bin/bash -c "tar -cjf /backup/$(date +"%Y-%m-%d")_tpl.tar.bz2 /var/www/html/lib/tpl ; chown 1001:1001 /backup/*.bz2" ==== Sauvegarde rapide Wallabag : wallabag.clapas.org ==== * Se placer dans le dossier suivant : ''cd /home/admin/yilgarn/wallabag.clapas.org'' * Créer un dossier //backup// si nécessaire : ''mkdir backup'' * Lancer successivement les sauvegardes avec les commandes : docker run --rm --volumes-from wallabag.clapas.org -v $(pwd)/backup:/backup bradynpoulsen/archive-utils /bin/bash -c "tar -cjf /backup/$(date +"%Y-%m-%d")_wallabag_data_backup.tar.bz2 /var/www/wallabag/data ; chown 1001:1001 /backup/*.bz2" docker run --rm --volumes-from wallabag.clapas.org -v $(pwd)/backup:/backup bradynpoulsen/archive-utils /bin/bash -c "tar -cjf /backup/$(date +"%Y-%m-%d")_wallabag_images_backup.tar.bz2 /var/www/wallabag/web/assets/images ; chown 1001:1001 /backup/*.bz2" * **Notes** : l'image //bradynpoulsen/archive-utils// contient le binaire //bzip2// non disponible dans les images Debian de base... ==== Sauvegarde rapide Passbolt : pwd.clapas.org ==== * Se placer dans le dossier suivant : ''cd /home/admin/yilgarn/pwd.clapas.org'' * Créer un dossier //backup// si nécessaire : ''mkdir backup'' * Lancer successivement les sauvegardes avec les commandes : docker exec pwd-clapas-database sh -c 'exec mysqldump --databases pwd -uroot -p"$MYSQL_ROOT_PASSWORD"' > "backup/$(date +"%Y-%m-%d")_db_backup.sql" docker run --rm --volumes-from pwd-clapas-passbolt -v $(pwd)/backup:/backup bradynpoulsen/archive-utils /bin/bash -c "tar -cjf /backup/$(date +"%Y-%m-%d")_gpg_backup.tar.bz2 /var/www/passbolt/config/gpg ; chown 1001:1001 /backup/*.bz2" docker run --rm --volumes-from pwd-clapas-passbolt -v $(pwd)/backup:/backup bradynpoulsen/archive-utils /bin/bash -c "tar -cjf /backup/$(date +"%Y-%m-%d")_img_backup.tar.bz2 /var/www/passbolt/webroot/img/public ; chown 1001:1001 /backup/*.bz2" * **Notes** : la sauvegarde de la base de données Mariadb et des dossiers se fait avec le container actif. ==== Sauvegarde rapide Wordpress : amandine-cuir.com ==== * Se placer dans le dossier suivant : ''cd /home/admin/yilgarn/amandine-cuir.com'' * Créer un dossier //backup// si nécessaire : ''mkdir backup'' * Lancer successivement les sauvegardes avec les commandes : docker exec amandine-cuir-database sh -c 'exec mysqldump --databases amandine_cuir -uroot -p"$MYSQL_ROOT_PASSWORD"' > "backup/$(date +"%Y-%m-%d")_db_backup.sql" docker run --rm --volumes-from amandine-cuir-cms -v $(pwd)/backup:/backup bradynpoulsen/archive-utils /bin/bash -c "tar -cjf /backup/$(date +"%Y-%m-%d")_wordpress_wp-content_backup.tar.bz2 /var/www/html/wp-content ; chown 1001:1001 /backup/*.bz2" * Pour synchroniser : * du dossier local vers le serveur : rsync -av --exclude wp-content/ --exclude backup/ --exclude database/ --exclude test/ ./amandine-cuir.com/ admin@yilgarn:/home/admin/yilgarn/amandine-cuir.com/ * du seveur vers le dossier local : rsync -av admin@yilgarn:/home/admin/yilgarn/amandine-cuir.com/ ./amandine-cuir.com/ * Mise à jour de la base de données suite à un upgrade de Mariadb : * Se connecter au container : '' docker exec -it amandine-cuir-database /bin/bash '' * Exécuter la commande de mise à jour : '' mariadb-upgrade -u root -p '' ==== Sauvegarde de Grafana : monitor.clapas.ovh ==== * Se placer dans le dossier suivant : ''cd /home/admin/yilgarn/monitor.clapas.ovh'' * Créer un dossier //./grafana/backup// si nécessaire : ''mkdir ./grafana/backup'' * Depuis l'interface de Grafana, créer un API Token avec les droits "admin" valable 1 jour et utiliser le dans la commande ci-dessous. * Lancer la sauvegarde avec la commande : docker run --user $(id -u):$(id -g) --rm --name grafana-backup-tool -e GRAFANA_TOKEN= -e GRAFANA_URL=https://monitor.clapas.ovh -e GRAFANA_ADMIN_ACCOUNT=admin -e GRAFANA_ADMIN_PASSWORD= -e VERIFY_SSL=True -v /home/admin/yilgarn/monitor.clapas.ovh/grafana/backup:/opt/grafana-backup-tool/_OUTPUT_ ysde/docker-grafana-backup-tool:latest ==== Sauvegarde de Gogs : git.clapas.org ==== * Se placer dans le dossier suivant : ''cd /home/admin/docker/git'' * Créer un dossier //./backup// si nécessaire : ''mkdir ./backup'' * Lancer la sauvegarde avec la commande : docker exec -it git-gogs /bin/bash -c "cd /app/gogs && USER=git ./gogs backup --target /backup --archive-name $(date +'%Y-%m-%d')_gogs_backup.zip && chown $(id -u):$(id -g) /backup/$(date +'%Y-%m-%d')_gogs_backup.zip" * Pour synchroniser : * du serveur vers le dossier local : rsync -av admin@yilgarn:/home/admin/dovker/git/backup/ ./git/backup/