Réinitialisation de votre mot de passe administrateur 🗝️
Si vous avez oublié votre mot de passe administrateur, ne vous inquiétez pas ! Vous trouverez ci-dessous des guides étape par étape pour réinitialiser votre mot de passe administrateur pour les déploiements Docker 🐳 et les installations locales d'Open WebUI.
Pour les déploiements Docker 🐳
Suivez ces étapes pour réinitialiser le mot de passe administrateur d'Open WebUI lorsque celui-ci est déployé à l'aide de Docker.
Étape 1 : Générer un nouveau hachage de mot de passe 🔐
Tout d'abord, vous devez créer un hachage bcrypt de votre nouveau mot de passe. Exécutez la commande suivante sur votre machine locale en remplaçant your-new-password
par le mot de passe que vous souhaitez utiliser :
htpasswd -bnBC 10 "" your-new-password | tr -d :\n
Remarque : La sortie inclura un hachage bcrypt avec des caractères spéciaux qui doivent être manipulés avec précaution. Tous les caractères $
dans le hachage devront être triple échappés (remplacés par \\\
) pour être correctement utilisés dans l'étape suivante.
Étape 2 : Mettre à jour le mot de passe dans Docker 🔄
Ensuite, vous mettrez à jour le mot de passe dans votre déploiement Docker. Remplacez HASH
dans la commande ci-dessous par le hachage bcrypt généré à l'étape 1, en vous assurant de triple échapper tous les caractères $
. Remplacez également [email protected]
par l'adresse email liée à votre compte administrateur.
Important : La commande suivante peut ne pas fonctionner dans tous les cas. Si cela ne fonctionne pas pour vous, essayez la commande alternative ci-dessous.
docker run --rm -v open-webui:/data alpine/socat EXEC:"bash -c apk add sqlite && echo UPDATE auth SET password=\HASH\ WHERE email=\[email protected]\; | sqlite3 /data/webui.db", STDIO
Pour les installations locales 💻
Si vous avez une installation locale d'Open WebUI, voici comment vous pouvez réinitialiser votre mot de passe administrateur directement sur votre système.
Étape 1 : Générer un nouveau hachage de mot de passe 🔐
Comme avec la méthode Docker, commencez par générer un hachage bcrypt de votre nouveau mot de passe en utilisant la commande suivante. N'oubliez pas de remplacer your-new-password
par votre nouveau mot de passe :
htpasswd -bnBC 10 "" your-new-password | tr -d :\n
Étape 2 : Mettre à jour localement le mot de passe 🔄
Maintenant, accédez au répertoire open-webui
sur votre machine locale. Mettez à jour votre mot de passe en remplaçant HASH
par le hachage bcrypt de l'étape 1 et [email protected]
par l'email de votre compte administrateur, puis exécutez :
sqlite3 backend/data/webui.db "UPDATE auth SET password=HASH WHERE [email protected];"
Méthode Docker alternative
Si vous rencontrez des problèmes avec ce qui précède. J'ai rencontré des problèmes en enchaînant les commandes bash
dans alpine/socat
, car bash
n'existe pas.
-
Exécutez une instance Linux
alpine
connectée au volumeopen-webui
.docker run -it --rm -v open-webui:/path/to/data alpine
/path/to/data
dépend de vos paramètres de volume.-
Installez
apache2-utils
etsqlite
:apk add apache2-utils sqlite
-
Générez le hachage
bcrypt
:htpasswd -bnBC 10 "" your-new-password | tr -d :
-
Mettez à jour le mot de passe :
sqlite3 /path/to/data/webui.db
UPDATE auth SET password=HASH WHERE email=admin@example.com;
-- quittez sqlite : [Ctrl + d]
-
Remise à zéro complète des données
Si vous souhaitez recommencer complètement Open WebUI—y compris toutes les données utilisateur, paramètres et mots de passe—suivez ces étapes pour supprimer le fichier webui.db
.
Étape 1 : Localiser webui.db
dans votre environnement Python
Si vous ne savez pas où se trouve webui.db
(notamment si vous utilisez un environnement virtuel), vous pouvez le localiser en suivant ces étapes :
-
Activez votre environnement virtuel (si applicable).
-
Ouvrez un shell Python : python
-
Exécutez le code suivant dans le shell Python :
import os
import open_webui
# Montrez où le paquet Open WebUI est installé
print("Open WebUI est installé à :", open_webui.__file__)
# Construisez un chemin potentiel vers webui.db (généralement situé dans 'data/webui.db')
db_path = os.path.join(os.path.dirname(open_webui.__file__), "data", "webui.db")
print("Chemin potentiel vers webui.db :", db_path)
# Vérifiez si webui.db existe à ce chemin
if os.path.exists(db_path):
print("webui.db trouvé à :", db_path)
else:
print("webui.db introuvable à :", db_path)
- Examinez la sortie :
- Si le fichier est trouvé, vous verrez son chemin exact.
- Sinon, vous devrez peut-être effectuer une recherche plus large sur le système de fichiers (par exemple, en utilisant
find
sous Linux ou une recherche globale de fichiers sous Windows/Mac).
Étape 2 : Supprimer webui.db
Une fois le fichier localisé, supprimez-le en utilisant une commande similaire à :
rm -rf /path/to/your/python/environment/lib/pythonX.X/site-packages/open_webui/data/webui.db
Avertissement : Supprimer webui.db
entraîne la suppression de toutes les données enregistrées, y compris les comptes utilisateur, paramètres et mots de passe. Ne faites cela que si vous voulez vraiment repartir de zéro !