Mise à niveau
Mise à niveau à partir de la version 1.6.X
Procédure
Docker
-
Sauvegardez la base de données :
- Avant de procéder à la mise à niveau de la base de données, assurez-vous d'effectuer une sauvegarde complète de l'état actuel de la base de données.
- Utilisez les outils appropriés pour sauvegarder l'intégralité de la base de données, y compris les données, les schémas et les configurations.
docker exec -it -e BACKUP_DIRECTORY=/path/to/backup/directory <scheduler_container> bwcli plugin backup save
docker cp <scheduler_container>:/path/to/backup/directory /path/to/backup/directory
-
Mettre à niveau BunkerWeb :
-
Mettez à niveau BunkerWeb vers la dernière version.
-
Mettre à jour le fichier Docker Compose : Mettez à jour le fichier Docker Compose pour utiliser la nouvelle version de l'image BunkerWeb.
services: bunkerweb: image: bunkerity/bunkerweb:1.6.5-rc1 ... bw-scheduler: image: bunkerity/bunkerweb-scheduler:1.6.5-rc1 ... bw-autoconf: image: bunkerity/bunkerweb-autoconf:1.6.5-rc1 ... bw-ui: image: bunkerity/bunkerweb-ui:1.6.5-rc1 ...
-
Redémarrer les conteneurs : redémarrez les conteneurs pour appliquer les modifications.
docker compose down docker compose up -d
-
-
-
Vérifier les journaux : vérifiez les journaux du service de planification pour vous assurer que la migration a réussi.
docker compose logs <scheduler_container>
-
Vérifier la base de données : vérifiez que la mise à niveau de la base de données a réussi en vérifiant les données et les configurations dans le nouveau conteneur de base de données.
Linux
-
Démarrage rapide :
Pour commencer, téléchargez le script d'installation et sa somme de contrôle, puis vérifiez l'intégrité du script avant de l'exécuter.
LATEST_VERSION=$(curl -s https://api.github.com/repos/bunkerity/bunkerweb/releases/latest | jq -r .tag_name) # Download the script and its checksum wget https://github.com/bunkerity/bunkerweb/releases/download/${LATEST_VERSION}/install-bunkerweb.sh wget https://github.com/bunkerity/bunkerweb/releases/download/${LATEST_VERSION}/install-bunkerweb.sh.sha256 # Verify the checksum sha256sum -c install-bunkerweb.sh.sha256 # If the check is successful, run the script chmod +x install-bunkerweb.sh sudo ./install-bunkerweb.sh
Avis de sécurité
Vérifiez toujours l'intégrité du script d'installation avant de l'exécuter.
Téléchargez le fichier de somme de contrôle et utilisez un outil comme
sha256sum
pour confirmer que le script n'a pas été modifié ou altéré.Si la vérification de la somme échoue, n'exécutez pas le script — il pourrait être dangereux.
-
Comment ça marche :
Le même script d'installation polyvalent utilisé pour les nouvelles installations peut également effectuer une mise à niveau sur place. Lorsqu'il détecte une installation existante et une version cible différente, il passe en mode mise à niveau et applique le flux de travail suivant :
- Détection et validation
- Détecte le système d'exploitation / la version et confirme la matrice de support.
- Lit la version BunkerWeb actuellement installée à partir de
/usr/share/bunkerweb/VERSION
.
- Décision du scénario de mise à niveau
- Si la version demandée est égale à celle installée, elle abandonne (sauf si vous la réexécutez explicitement pour l'état).
- Si les versions diffèrent, il signale une mise à niveau.
- (Facultatif) Sauvegarde automatique de pré-mise à niveau
- Si
bwcli
le planificateur est disponible et que la sauvegarde automatique est activée, il crée une sauvegarde via le plugin de sauvegarde intégré. - Destination : soit le répertoire que vous avez fourni,
--backup-dir
soit un chemin généré tel que/var/tmp/bunkerweb-backup-YYYYmmdd-HHMMSS
. - Vous pouvez désactiver cela avec
--no-auto-backup
(la sauvegarde manuelle devient alors de votre responsabilité).
- Si
- Repos du service
- Arrête
bunkerweb
,bunkerweb-ui
etbunkerweb-scheduler
pour assurer une mise à niveau cohérente (correspond aux recommandations de la procédure manuelle).
- Arrête
- Suppression des verrous de colis
- Supprime temporairement
apt-mark hold
/dnf versionlock
activebunkerweb
etnginx
permet ainsi d'installer la version ciblée.
- Supprime temporairement
- Exécution de la mise à niveau
- Installe uniquement la nouvelle version du package BunkerWeb (NGINX n'est pas réinstallé en mode de mise à niveau à moins qu'il ne soit manquant - cela évite de toucher à un NGINX correctement épinglé).
- Réapplique les blocages/verrous de version pour geler les versions mises à niveau.
- Finalisation et état d'avancement
- Affiche l'état de systemd pour les services principaux et les étapes suivantes.
- Laisse votre configuration et votre base de données intactes : seuls le code de l'application et les fichiers gérés sont mis à jour.
Comportements clés / notes :
- Le script ne modifie PAS le
/etc/bunkerweb/variables.env
contenu de votre base de données. - Si la sauvegarde automatique a échoué (ou a été désactivée), vous pouvez toujours effectuer une restauration manuelle à l'aide de la section Restauration ci-dessous.
- Le mode de mise à niveau évite intentionnellement de réinstaller ou de rétrograder NGINX en dehors de la version épinglée prise en charge déjà présente.
- Les journaux de dépannage restent dans
/var/log/bunkerweb/
.
Résumé du retour en arrière :
- Utilisez le répertoire de sauvegarde généré (ou votre sauvegarde manuelle) + les étapes de la section Rollback pour restaurer la base de données, puis réinstallez la version précédente de l'image/du paquet et verrouillez à nouveau les paquets.
- Détection et validation
-
Options de ligne de commande :
Vous pouvez effectuer des mises à niveau sans assistance avec les mêmes indicateurs que ceux utilisés pour l'installation. Les plus pertinents pour les mises à niveau :
Option But -v, --version <X.Y.Z>
Ciblez la version de BunkerWeb à mettre à niveau. -y, --yes
Non interactif (suppose la confirmation de la mise à niveau et active la sauvegarde automatique, sauf si --no-auto-backup
).--backup-dir <PATH>
Destination de la sauvegarde automatique de pré-mise à niveau. Créé s'il est manquant. --no-auto-backup
Ignorez la sauvegarde automatique (NON recommandé). Vous devez disposer d'une sauvegarde manuelle. -q, --quiet
Suppression de la sortie (combinée avec l'enregistrement/la surveillance). -f, --force
Procédez sur une version du système d'exploitation non prise en charge. --dry-run
Affichez l'environnement détecté, les actions prévues, puis quittez sans rien modifier. Exemples:
# Upgrade to 1.6.5-rc1 interactively (will prompt for backup) sudo ./install-bunkerweb.sh --version 1.6.5-rc1 # Non-interactive upgrade with automatic backup to custom directory sudo ./install-bunkerweb.sh -v 1.6.5-rc1 --backup-dir /var/backups/bw-2025-01 -y # Silent unattended upgrade (logs suppressed) – relies on default auto-backup sudo ./install-bunkerweb.sh -v 1.6.5-rc1 -y -q # Perform a dry run (plan) without applying changes sudo ./install-bunkerweb.sh -v 1.6.5-rc1 --dry-run # Upgrade skipping automatic backup (NOT recommended) sudo ./install-bunkerweb.sh -v 1.6.5-rc1 --no-auto-backup -y
Sauter les sauvegardes
L'utilisation
--no-auto-backup
sans sauvegarde manuelle vérifiée peut entraîner une perte de données irréversible si la mise à niveau rencontre des problèmes. Conservez toujours au moins une sauvegarde récente et testée.
-
Sauvegardez la base de données :
- Avant de procéder à la mise à niveau de la base de données, assurez-vous d'effectuer une sauvegarde complète de l'état actuel de la base de données.
- Utilisez les outils appropriés pour sauvegarder l'intégralité de la base de données, y compris les données, les schémas et les configurations.
Informations pour les utilisateurs de Red Hat Enterprise Linux (RHEL) 8.10
Si vous utilisez RHEL 8.10 et prévoyez d'utiliser une base de données externe, vous devrez installer le paquet
mysql-community-client
pour vous assurer que la commandemysqldump
est disponible. Vous pouvez installer le paquet en exécutant les commandes suivantes :-
Installez le paquet de configuration du dépôt MySQL
sudo dnf install https://dev.mysql.com/get/mysql80-community-release-el8-9.noarch.rpm
-
Activez le dépôt MySQL
sudo dnf config-manager --enable mysql80-community
-
Installez le client MySQL
sudo dnf install mysql-community-client
-
Installer le paquet de configuration du dépôt PostgreSQL
dnf install "https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-$(uname -m)/pgdg-redhat-repo-latest.noarch.rpm"
-
Installer le client PostgreSQL
dnf install postgresql<version>
BACKUP_DIRECTORY=/path/to/backup/directory bwcli plugin backup save
-
Mettre à niveau BunkerWeb :
-
Mettez à niveau BunkerWeb vers la dernière version.
-
Arrêtez les services :
sudo systemctl stop bunkerweb sudo systemctl stop bunkerweb-ui sudo systemctl stop bunkerweb-scheduler
-
Mettre à jour BunkerWeb :
Tout d'abord, si vous avez précédemment marqué le paquet BunkerWeb comme mis en attente, annulez cette mise en attente :
Vous pouvez afficher la liste des paquets en attente avec
apt-mark showhold
sudo apt-mark unhold bunkerweb nginx
Ensuite, vous pouvez mettre à jour le paquet BunkerWeb :
sudo apt update && \ sudo apt install -y --allow-downgrades bunkerweb=1.6.5-rc1
Pour empêcher le paquet BunkerWeb d'être mis à niveau lors de l'exécution de
apt upgrade
, vous pouvez utiliser la commande suivante :sudo apt-mark hold bunkerweb nginx
Plus de détails dans la page intégration Linux.
Tout d'abord, si vous avez précédemment marqué le paquet BunkerWeb comme mis en attente, annulez cette mise en attente :
Vous pouvez afficher la liste des paquets en attente avec
dnf versionlock list
sudo dnf versionlock delete package bunkerweb && \ sudo dnf versionlock delete package nginx
Ensuite, vous pouvez mettre à jour le paquet BunkerWeb :
sudo dnf makecache && \ sudo dnf install -y --allowerasing bunkerweb-1.6.5-rc1
Pour empêcher le paquet BunkerWeb d'être mis à niveau lors de l'exécution de
dnf upgrade
, vous pouvez utiliser la commande suivante :sudo dnf versionlock add bunkerweb && \ sudo dnf versionlock add nginx
Plus de détails dans la page intégration Linux.
-
Démarrez les services :
Ou redémarrez le système :sudo systemctl start bunkerweb sudo systemctl start bunkerweb-ui sudo systemctl start bunkerweb-scheduler
sudo reboot
-
-
-
Vérifier les journaux : vérifiez les journaux du service de planification pour vous assurer que la migration a réussi.
journalctl -u bunkerweb --no-pager
-
Vérifier la base de données : vérifiez que la mise à niveau de la base de données a réussi en vérifiant les données et les configurations dans le nouveau conteneur de base de données.
Rollback
En cas de problèmes
Si vous rencontrez des problèmes lors de la mise à niveau, vous pouvez revenir à la version précédente de la base de données en restaurant la sauvegarde effectuée à l’étape 1.
Obtenez de l’aide et plus d’informations :
-
Extrayez la sauvegarde si elle est compressée.
Extrayez d'abord le fichier de sauvegarde compressé :
unzip /path/to/backup/directory/backup.zip -d /path/to/backup/directory/
-
Restaurez la sauvegarde.
-
Supprimez le fichier de base de données existant.
docker exec -u 0 -i <scheduler_container> rm -f /var/lib/bunkerweb/db.sqlite3
-
Restaurez la sauvegarde.
docker exec -i <scheduler_container> sqlite3 /var/lib/bunkerweb/db.sqlite3 < /path/to/backup/directory/backup.sql
-
Corrigez les permissions.
docker exec -u 0 -i <scheduler_container> chown root:nginx /var/lib/bunkerweb/db.sqlite3 docker exec -u 0 -i <scheduler_container> chmod 770 /var/lib/bunkerweb/db.sqlite3
-
Arrêtez la pile.
docker compose down
-
Restaurez la sauvegarde.
docker exec -e MYSQL_PWD=<your_password> -i <database_container> mysql -u <username> <database_name> < /path/to/backup/directory/backup.sql
-
Arrêtez la pile.
docker compose down
-
Supprimez la base de données existante.
docker exec -i <database_container> dropdb -U <username> --force <database_name>
-
Recréez la base de données.
docker exec -i <database_container> createdb -U <username> <database_name>
-
Restaurez la sauvegarde.
docker exec -i <database_container> psql -U <username> -d <database_name> < /path/to/backup/directory/backup.sql
-
Arrêtez la pile.
docker compose down
-
-
Rétrograder BunkerWeb.
services: bunkerweb: image: bunkerity/bunkerweb:<old_version> ... bw-scheduler: image: bunkerity/bunkerweb-scheduler:<old_version> ... bw-autoconf: image: bunkerity/bunkerweb-autoconf:<old_version> ... bw-ui: image: bunkerity/bunkerweb-ui:<old_version> ...
-
Démarrez les conteneurs.
docker compose up -d
-
Extrayez la sauvegarde si elle est compressée.
Extrayez d'abord le fichier zip de sauvegarde :
unzip /path/to/backup/directory/backup.zip -d /path/to/backup/directory/
-
Arrêtez les services.
sudo systemctl stop bunkerweb bunkerweb-ui bunkerweb-scheduler
-
Restaurez la sauvegarde.
sudo rm -f /var/lib/bunkerweb/db.sqlite3 sudo sqlite3 /var/lib/bunkerweb/db.sqlite3 < /path/to/backup/directory/backup.sql sudo chown root:nginx /var/lib/bunkerweb/db.sqlite3 sudo chmod 770 /var/lib/bunkerweb/db.sqlite3
mysql -u <username> -p <database_name> < /path/to/backup/directory/backup.sql
-
Supprimez la base de données existante.
dropdb -U <username> --force <database_name>
-
Recréez la base de données.
createdb -U <username> <database_name>
-
Restaurez la sauvegarde.
psql -U <username> -d <database_name> < /path/to/backup/directory/backup.sql
-
-
Démarrez les services.
sudo systemctl start bunkerweb bunkerweb-ui bunkerweb-scheduler
-
Rétrograder BunkerWeb.
- Rétrogradez BunkerWeb vers la version précédente en suivant les mêmes étapes que lors de la mise à niveau de BunkerWeb dans la page d'intégration Linux
Mise à niveau à partir de la version 1.5.X
Qu'est-ce qui a changé ?
Programmateur
Contrairement aux versions 1.5.X, le service Scheduler n' utilise plus le proxy de la socket docker pour récupérer les instances de BunkerWeb. Au lieu de cela, il utilise la nouvelle BUNKERWEB_INSTANCES
variable d'environnement.
À propos de la BUNKERWEB_INSTANCES
variable d'environnement
Cette nouvelle variable est une liste d'instances BunkerWeb séparées par des espaces, au format suivant : http://bunkerweb:5000 bunkerweb1:5000 bunkerweb2:5000 ...
. Le planificateur utilisera ensuite cette liste pour récupérer et envoyer la configuration aux instances.
- Le
http://
préfixe est facultatif. - Le port est facultatif et utilise par défaut la valeur de la variable d'
API_HTTP_PORT
environnement. - La valeur par défaut de la
BUNKERWEB_INSTANCES
variable d'environnement est127.0.0.1
.
En d'autres termes, le nouveau système est totalement agnostique et générique : le planificateur est en charge de la gestion d'une liste d'instances BunkerWeb et n'a pas besoin de se soucier de l'environnement.
Intégrations Autoconf/Kubernetes/Swarm
Si vous utilisez les intégrations Autoconf
, Kubernetes
ou Swarm
, vous pouvez définir la variable d'environnement BUNKERWEB_INSTANCES
sur une chaîne vide (afin qu'elle n'essaie pas d'envoyer la configuration à la valeur par défaut 127.0.0.1
).
Les instances seront récupérées automatiquement par le contrôleur. Vous pouvez également ajouter des instances personnalisées à la liste qui pourraient ne pas être détectées par le contrôleur.
Depuis le 1.6
, le planificateur dispose également d'un nouveau système de vérification de l'état intégré, qui vérifiera l'état des instances. Si une instance devient défectueuse, le planificateur cessera de lui envoyer la configuration. Si l'instance redevient saine, le planificateur recommence à lui envoyer la configuration.
Conteneur BunkerWeb
Un autre changement important est que les paramètres qui étaient précédemment déclarés sur le conteneur BunkerWeb sont désormais déclarés sur le planificateur. Cela signifie que vous devrez déplacer vos paramètres du conteneur BunkerWeb vers le conteneur Scheduler.
Bien que les paramètres soient maintenant déclarés sur le conteneur du planificateur, vous devrez toujours déclarer les paramètres obligatoires liés à l'API sur le conteneur BunkerWeb, comme le API_WHITELIST_IP
paramètre utilisé pour mettre en liste blanche l'adresse IP du planificateur, afin qu'il puisse envoyer la configuration à l'instance.
Paramètres du conteneur de BunkerWeb
Tous les paramètres liés à l'API que vous déclarez sur le conteneur BunkerWeb doivent également être répliqués sur le conteneur du planificateur afin qu'ils continuent de fonctionner, car la configuration sera écrasée par celle générée par le planificateur.
Valeurs par défaut et nouveaux paramètres
Nous avons fait de notre mieux pour ne pas changer la valeur par défaut, mais nous avons ajouté de nombreux autres paramètres. Il est fortement recommandé de lire les sections sur le réglage de la sécurité et les paramètres de la documentation.
Modèles
Nous avons ajouté une nouvelle fonctionnalité appelée modèles. Les modèles fournissent une approche structurée et standardisée de la définition des paramètres et des configurations personnalisées, consultez la section concepts/modèles pour plus d'informations.
Espaces de noms Autoconf
Nous avons ajouté une fonctionnalité d'espace de noms aux intégrations autoconf. Les espaces de noms vous permettent de regrouper vos instances et d'appliquer des paramètres uniquement à celles-ci. Pour plus d'informations, consultez les sections suivantes en fonction de votre intégration :
Procédure
-
Sauvegardez la base de données :
- Avant de procéder à la mise à niveau de la base de données, assurez-vous d'effectuer une sauvegarde complète de l'état actuel de la base de données.
- Utilisez les outils appropriés pour sauvegarder l'intégralité de la base de données, y compris les données, les schémas et les configurations.
docker exec -it -e BACKUP_DIRECTORY=/path/to/backup/directory <scheduler_container> bwcli plugin backup save
docker cp <scheduler_container>:/path/to/backup/directory /path/to/backup/directory
Informations pour les utilisateurs de Red Hat Enterprise Linux (RHEL) 8.10
Si vous utilisez RHEL 8.10 et prévoyez d'utiliser une base de données externe, vous devrez installer le paquet
mysql-community-client
afin que la commandemysqldump
soit disponible. Vous pouvez installer le paquet en exécutant les commandes suivantes :-
Installez le paquet de configuration du dépôt MySQL
sudo dnf install https://dev.mysql.com/get/mysql80-community-release-el8-9.noarch.rpm
-
Activez le dépôt MySQL
sudo dnf config-manager --enable mysql80-community
-
Installez le client MySQL
sudo dnf install mysql-community-client
-
Installez le paquet de configuration du dépôt PostgreSQL
dnf install "https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-$(uname -m)/pgdg-redhat-repo-latest.noarch.rpm"
-
Installez le client PostgreSQL
dnf install postgresql<version>
BACKUP_DIRECTORY=/path/to/backup/directory bwcli plugin backup save
Nous devons d'abord installer le paquet
sqlite
dans le conteneur.docker exec -u 0 -it <scheduler_container> apk add sqlite
Ensuite, sauvegardez la base de données.
docker exec -it <scheduler_container> sqlite3 /var/lib/bunkerweb/db.sqlite3 ".dump" > /path/to/backup/directory/backup.sql
sqlite3 /var/lib/bunkerweb/db.sqlite3 ".dump" > /path/to/backup/directory/backup.sql
docker exec -it -e MYSQL_PWD=<database_password> <database_container> mariadb-dump -u <username> <database_name> > /path/to/backup/directory/backup.sql
MYSQL_PWD=<database_password> mariadb-dump -u <username> <database_name> > /path/to/backup/directory/backup.sql
docker exec -it -e MYSQL_PWD=<database_password> <database_container> mysqldump -u <username> <database_name> > /path/to/backup/directory/backup.sql
MYSQL_PWD=<database_password> mysqldump -u <username> <database_name> > /path/to/backup/directory/backup.sql
docker exec -it -e PGPASSWORD=<database_password> <database_container> pg_dump -U <username> -d <database_name> > /path/to/backup/directory/backup.sql
PGPASSWORD=<database_password> pg_dump -U <username> -d <database_name> > /path/to/backup/directory/backup.sql
-
Mettre à niveau BunkerWeb :
-
Mettez à niveau BunkerWeb vers la dernière version.
-
Mettre à jour le fichier Docker Compose : Mettez à jour le fichier Docker Compose pour utiliser la nouvelle version de l'image BunkerWeb.
services: bunkerweb: image: bunkerity/bunkerweb:1.6.5-rc1 ... bw-scheduler: image: bunkerity/bunkerweb-scheduler:1.6.5-rc1 ... bw-autoconf: image: bunkerity/bunkerweb-autoconf:1.6.5-rc1 ... bw-ui: image: bunkerity/bunkerweb-ui:1.6.5-rc1 ...
-
Redémarrer les conteneurs : Redémarrez les conteneurs pour appliquer les modifications.
docker compose down docker compose up -d
-
Arrêtez les services:
sudo systemctl stop bunkerweb sudo systemctl stop bunkerweb-ui sudo systemctl stop bunkerweb-scheduler
-
Mettre à jour BunkerWeb :
Tout d'abord, si vous avez précédemment marqué le paquet BunkerWeb comme mis en attente, annulez cette mise en attente :
Vous pouvez afficher la liste des paquets en attente avec
apt-mark showhold
sudo apt-mark unhold bunkerweb nginx
Ensuite, vous pouvez mettre à jour le paquet BunkerWeb :
sudo apt update && \ sudo apt install -y --allow-downgrades bunkerweb=1.6.5-rc1
Pour empêcher le paquet BunkerWeb d'être mis à niveau lors de l'exécution de
apt upgrade
, vous pouvez utiliser la commande suivante :sudo apt-mark hold bunkerweb nginx
Plus de détails dans la page intégration Linux.
Tout d'abord, si vous avez précédemment verrouillé (mis en attente) le paquet BunkerWeb, annulez ce verrouillage :
Vous pouvez afficher la liste des paquets verrouillés avec
dnf versionlock list
sudo dnf versionlock delete package bunkerweb && \ sudo dnf versionlock delete package nginx
Ensuite, vous pouvez mettre à jour le paquet BunkerWeb :
sudo dnf makecache && \ sudo dnf install -y --allowerasing bunkerweb-1.6.5-rc1
Pour empêcher le paquet BunkerWeb d'être mis à niveau lors de l'exécution de
dnf upgrade
, vous pouvez utiliser la commande suivante :sudo dnf versionlock add bunkerweb && \ sudo dnf versionlock add nginx
Plus de détails dans la page intégration Linux.
-
Démarrer les services :
Ou redémarrez le système :sudo systemctl start bunkerweb sudo systemctl start bunkerweb-ui sudo systemctl start bunkerweb-scheduler
sudo reboot
-
-
-
Vérifier les journaux : vérifiez les journaux du service de planification pour vous assurer que la migration a réussi.
docker compose logs <scheduler_container>
journalctl -u bunkerweb --no-pager
-
Vérifier la base de données : vérifiez que la mise à niveau de la base de données a réussi en vérifiant les données et les configurations dans le nouveau conteneur de base de données.
Rollback
En cas de problèmes
Si vous rencontrez des problèmes lors de la mise à niveau, vous pouvez revenir à la version précédente de la base de données en restaurant la sauvegarde effectuée à l'étape 1.
Obtenez de l'aide et plus d'informations :
-
Extrayez la sauvegarde si elle est compressée.
Extrayez d'abord le fichier zip de sauvegarde :
unzip /path/to/backup/directory/backup.zip -d /path/to/backup/directory/
-
Restaurez la sauvegarde.
-
Supprimez le fichier de base de données existant.
docker exec -u 0 -i <scheduler_container> rm -f /var/lib/bunkerweb/db.sqlite3
-
Restaurez la sauvegarde.
docker exec -i <scheduler_container> sqlite3 /var/lib/bunkerweb/db.sqlite3 < /path/to/backup/directory/backup.sql
-
Corrigez les permissions.
docker exec -u 0 -i <scheduler_container> chown root:nginx /var/lib/bunkerweb/db.sqlite3 docker exec -u 0 -i <scheduler_container> chmod 770 /var/lib/bunkerweb/db.sqlite3
-
Arrêtez la pile.
docker compose down
-
Restaurez la sauvegarde.
docker exec -e MYSQL_PWD=<your_password> -i <database_container> mysql -u <username> <database_name> < /path/to/backup/directory/backup.sql
-
Arrêtez la pile.
docker compose down
-
Supprimez la base de données existante.
docker exec -i <database_container> dropdb -U <username> --force <database_name>
-
Recréez la base de données.
docker exec -i <database_container> createdb -U <username> <database_name>
-
Restaurez la sauvegarde.
docker exec -i <database_container> psql -U <username> -d <database_name> < /path/to/backup/directory/backup.sql
-
Arrêtez la pile.
docker compose down
-
-
Rétrograder BunkerWeb.
services: bunkerweb: image: bunkerity/bunkerweb:<old_version> ... bw-scheduler: image: bunkerity/bunkerweb-scheduler:<old_version> ... bw-autoconf: image: bunkerity/bunkerweb-autoconf:<old_version> ... bw-ui: image: bunkerity/bunkerweb-ui:<old_version> ...
-
Démarrez les conteneurs.
docker compose up -d
-
Extrayez la sauvegarde si elle est compressée.
Extrayez d'abord le fichier zip de sauvegarde :
unzip /path/to/backup/directory/backup.zip -d /path/to/backup/directory/
-
Arrêtez les services.
sudo systemctl stop bunkerweb bunkerweb-ui bunkerweb-scheduler
-
Restaurez la sauvegarde.
sudo rm -f /var/lib/bunkerweb/db.sqlite3 sudo sqlite3 /var/lib/bunkerweb/db.sqlite3 < /path/to/backup/directory/backup.sql sudo chown root:nginx /var/lib/bunkerweb/db.sqlite3 sudo chmod 770 /var/lib/bunkerweb/db.sqlite3
mysql -u <username> -p <database_name> < /path/to/backup/directory/backup.sql
-
Supprimez la base de données existante.
dropdb -U <username> --force <database_name>
-
Recréez la base de données.
createdb -U <username> <database_name>
-
Restaurez la sauvegarde.
psql -U <username> -d <database_name> < /path/to/backup/directory/backup.sql
-
-
Démarrez les services.
sudo systemctl start bunkerweb bunkerweb-ui bunkerweb-scheduler
-
Rétrograder BunkerWeb.
- Rétrogradez BunkerWeb vers la version précédente en suivant les mêmes étapes que lors de la mise à niveau de BunkerWeb dans la page d'intégration Linux