Zum Hauptinhalt springen

So setzen Sie Ihr Admin-Passwort zurück 🗝️

Wenn Sie Ihr Admin-Passwort vergessen haben, keine Sorge! Im Folgenden finden Sie Schritt-für-Schritt-Anleitungen, wie Sie Ihr Admin-Passwort für Docker 🐳-Bereitstellungen und lokale Installationen von Open WebUI zurücksetzen können.

Für Docker-Bereitstellungen 🐳

Befolgen Sie diese Schritte, um das Admin-Passwort für Open WebUI zurückzusetzen, wenn es mit Docker bereitgestellt wurde.

Schritt 1: Einen neuen Passwort-Hash generieren 🔐

Zuerst müssen Sie einen bcrypt-Hash Ihres neuen Passworts erstellen. Führen Sie den folgenden Befehl auf Ihrem lokalen Rechner aus und ersetzen Sie your-new-password durch das Passwort, das Sie verwenden möchten:

htpasswd -bnBC 10 "" your-new-password | tr -d :\n

Hinweis: Die Ausgabe enthält einen bcrypt-Hash mit Sonderzeichen, die sorgfältig behandelt werden müssen. Alle $-Zeichen im Hash müssen dreifach escaped werden (durch \\\ ersetzt), um im nächsten Schritt korrekt verwendet zu werden.

Schritt 2: Das Passwort in Docker aktualisieren 🔄

Als nächstes aktualisieren Sie das Passwort in Ihrer Docker-Bereitstellung. Ersetzen Sie HASH im unten stehenden Befehl durch den in Schritt 1 generierten bcrypt-Hash und stellen Sie sicher, dass alle $-Zeichen dreifach escaped sind. Ersetzen Sie auch [email protected] durch die E-Mail-Adresse, die mit Ihrem Admin-Konto verknüpft ist.

Wichtig: Der folgende Befehl funktioniert möglicherweise nicht in allen Fällen. Wenn er bei Ihnen nicht funktioniert, versuchen Sie den alternativen Befehl weiter unten.

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

Für lokale Installationen 💻

Wenn Sie eine lokale Installation von Open WebUI nutzen, können Sie hier erfahren, wie Sie Ihr Admin-Passwort direkt auf Ihrem System zurücksetzen.

Schritt 1: Einen neuen Passwort-Hash generieren 🔐

Wie bei der Docker-Methode beginnen Sie mit der Erstellung eines bcrypt-Hashs Ihres neuen Passworts mit dem folgenden Befehl. Ersetzen Sie your-new-password durch Ihr neues Passwort:

htpasswd -bnBC 10 "" your-new-password | tr -d :\n

Schritt 2: Das Passwort lokal aktualisieren 🔄

Navigieren Sie nun zum Verzeichnis open-webui auf Ihrem lokalen Rechner. Aktualisieren Sie Ihr Passwort, indem Sie HASH durch den bcrypt-Hash aus Schritt 1 und [email protected] durch die E-Mail-Adresse Ihres Admin-Kontos ersetzen. Führen Sie dann Folgendes aus:

sqlite3 backend/data/webui.db "UPDATE auth SET password=HASH WHERE [email protected];"

Alternative Docker-Methode

Falls Sie Probleme mit dem oben genannten Ansatz haben. Ich hatte Probleme mit der Verkettung der bash-Befehle in alpine/socat, da bash nicht vorhanden ist.

  1. Führen Sie alpine Linux aus, das mit dem open-webui-Volume verbunden ist.

    docker run -it --rm -v open-webui:/path/to/data alpine

    /path/to/data hängt von Ihren Volumen-Einstellungen ab.

    1. Installieren Sie apache2-utils und sqlite:

      apk add apache2-utils sqlite
    2. Generieren Sie den bcrypt-Hash:

      htpasswd -bnBC 10 "" your-new-password | tr -d :
    3. Passwort aktualisieren:

      sqlite3 /path/to/data/webui.db
      UPDATE auth SET password=HASH WHERE email=admin@example.com;
      -- sqlite beenden: [Strg + d]

Alle Daten löschen

Wenn Sie Open WebUI vollständig zurücksetzen möchten – einschließlich aller Benutzerdaten, Einstellungen und Passwörter –, befolgen Sie diese Schritte, um die Datei webui.db zu entfernen.

Schritt 1: webui.db in Ihrer Python-Umgebung finden

Wenn Sie nicht sicher sind, wo sich webui.db befindet (insbesondere, wenn Sie eine virtuelle Umgebung verwenden), können Sie es mit folgenden Schritten herausfinden:

  1. Aktivieren Sie Ihre virtuelle Umgebung (falls zutreffend).

  2. Öffnen Sie eine Python-Shell: python

  3. Führen Sie den folgenden Code in der Python-Shell aus:

   import os
import open_webui

# Zeigen Sie an, wo das Open-WebUI-Paket installiert ist
print("Open WebUI ist installiert unter:", open_webui.__file__)

# Path zur potenziellen webui.db (häufig in data/webui.db enthalten)
db_path = os.path.join(os.path.dirname(open_webui.__file__), "data", "webui.db")
print("Möglicher Pfad zu webui.db:", db_path)

# Prüfen, ob webui.db an diesem Pfad existiert
if os.path.exists(db_path):
print("webui.db gefunden unter:", db_path)
else:
print("webui.db nicht gefunden unter:", db_path)
  1. Überprüfen Sie die Ausgabe:
    • Wenn die Datei gefunden wird, sehen Sie den genauen Pfad.
    • Wenn nicht, müssen Sie ggf. mit einer umfassenderen Dateisuche arbeiten (z. B. mit find auf Linux oder einer globalen Dateisuche auf Windows/Mac).

Schritt 2: webui.db löschen

Sobald Sie die Datei gefunden haben, entfernen Sie sie mit einem ähnlichen Befehl:

   rm -rf /path/to/your/python/environment/lib/pythonX.X/site-packages/open_webui/data/webui.db

Warnung: Das Löschen von webui.db entfernt alle gespeicherten Daten, einschließlich Benutzerkonten, Einstellungen und Passwörter. Tun Sie dies nur, wenn Sie wirklich von vorne beginnen möchten!