Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente |
informatique:aides:docker [2021/12/28 13:53] – [Sauvegarde rapide Dokuwiki memos.clapas.org] jpmilcent | informatique:aides:docker [2024/12/31 10:31] (Version actuelle) – [Renommer un volume] jpmilcent |
---|
===== Notes ===== | ===== Notes ===== |
* Dockerfile : | * Dockerfile : |
* ''ADD --chown=user:group my-backup.tar.gz /var/www '' : chown n'a aucun effet sur les fichiers et dossiers extrait d'un fichier compressé et c'est normal... | * ''%% ADD --chown=user:group my-backup.tar.gz /var/www %%'' : chown n'a aucun effet sur les fichiers et dossiers extrait d'un fichier compressé et c'est normal... |
* Dans un Dockerfile appelé depuis un fichier docker-compose.yml où des volumes nommées sont créés, la commande chown n'aura aucun effet car les volumes sont créés préalablement... | * Dans un Dockerfile appelé depuis un fichier docker-compose.yml où des volumes nommées sont créés, la commande chown n'aura aucun effet car les volumes sont créés préalablement... |
| |
* Utiliser ensuite la commande ''cp'' pour restaurer les données : ''docker cp ~/backup_dir shaarli_data_1:/usr/share/nginx/shaarli/data/'' | * Utiliser ensuite la commande ''cp'' pour restaurer les données : ''docker cp ~/backup_dir shaarli_data_1:/usr/share/nginx/shaarli/data/'' |
| |
==== Sauvegarde rapide de Shaarli : bookmarks.clapas.org ==== | ===== Renommer un volume ===== |
* Se placer dans le dossier suivant : ''cd /home/admin/yilgarn/boomarks.clapas.org'' | * Pas de solution évidente. Il faut aussi créer les volumes avec Docker Compose sinon nous avons un message d'avertissement. |
* Créer un dossier //backup// : ''mkdir backup'' | * Arrêter les containers : <code bash>docker compose down</code> |
* Sauvegarde du dossier ''/data'' : <code bash>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" </code> | * Renommer le dossier et vérifier le contenu du fichier ''docker-compose.yml'' |
* Vérifier sur l'hôte la présence du nouveau fichier ''.tar.bz2'' dans le dossier ''./backup/'' | * Créer le nouveau volume ''new_volume'' associé à la stack Docker Compose avec : <code bash>docker compose up -d; docker compose down</code> |
==== Sauvegarde rapide Dokuwiki : memos.clapas.org ==== | * Copier les données de l'ancien ''old_volume'' vers le nouveau volume ''new_volume'' avec : <code bash>docker run --rm -it -v old_volume:/from -v new_volume:/to alpine ash -c 'cd /from ; cp -av . /to'</code> |
* Se placer dans le dossier suivant : ''cd /home/admin/yilgarn/memos.clapas.org'' | * Relancer le container et vérifier que tout fonctionne correctement : <code bash>docker compose up -d</code> |
* Créer un dossier //backup// : ''mkdir backup'' | * Si tout est ok, supprimer l'ancien volume : <code bash>docker volume rm old_volume</code> |
* Créer successivement les sauvegardes avec les commandes :<code bash> | |
docker run --rm --volumes-from memos.clapas.org_dokuwiki -v $(pwd)/backup:/backup debian:buster tar cvf /backup/2020-06-04_data.tar /var/www/html/data | |
docker run --rm --volumes-from memos.clapas.org_dokuwiki -v $(pwd)/backup:/backup debian:buster tar cvf /backup/2020-06-04_conf.tar /var/www/html/conf | |
docker run --rm --volumes-from memos.clapas.org_dokuwiki -v $(pwd)/backup:/backup debian:buster tar cvf /backup/2020-06-04_plugins.tar /var/www/html/lib/plugins | |
docker run --rm --volumes-from memos.clapas.org_dokuwiki -v $(pwd)/backup:/backup debian:buster tar cvf /backup/2020-06-04_tpl.tar /var/www/html/lib/tpl | |
</code> | |
* Passer en root et donner les droits à admin sur les fichiers : ''su ; chown admin: backup/*.tar'' | |
| |
==== 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 : <code bash> | |
docker-compose down | |
docker run --rm --volumes-from wallabag.clapas.org -v $(pwd)/backup:/backup bradynpoulsen/archive-utils /bin/bash -c "tar -cjf /backup/2020-06-05_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/2020-06-05_wallabag_images_backup.tar.bz2 /var/www/wallabag/web/assets/images ; chown 1001:1001 /backup/*.bz2" | |
</code> | |
* **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 : <code bash> | |
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" | |
</code> | |
* **Notes** : la sauvegarde de la base de données Mariadb et des dossiers se fait avec le container actif. | |
| |
===== Passbolt ===== | |
===== JWT appli mobile ===== | |
ATTENTION : après chaque redémarrage du docker, il est nécessaire de relancer les commandes ci-dessous : | |
* Se connecter au container : ''docker exec -it pwd-clapas-passbolt /bin/bash'' | |
* Créer le dossier : ''mkdir -m=770 /etc/passbolt/jwt'' | |
* Donner les bons droits : ''chown www-data:www-data /etc/passbolt/jwt/'' | |
* Créer les clés JWT : ''su -s /bin/bash -c "/usr/share/php/passbolt/bin/cake passbolt create_jwt_keys" www-data'' | |
* Vérifier que tout est ok : ''bin/cake passbolt healthcheck'' | |
| |
===== Commandes utiles ===== | ===== Commandes utiles ===== |