Beim Update von Nginx Proxy Manager geht die Konfiguration verloren

Rickmer

Fleet Admiral
Registriert
Sep. 2009
Beiträge
20.568
Moin,

ich wollte vorhin mal wieder den Nginx Proxy Manger (läuft in Docker) updaten. Soweit so easy (docker-compse pull, docker-compose up -d), einziges Problem - danach konnte ich mich aber nicht mehr anmelden, 'no relevant user found'.

Auf den Snapshot von vor dem Update zurück gegangen - Login kein Problem. Nochmal das Update gemacht, selbes Problem. Bissl gegoogelt - Login per admin@example.com / changeme geht, aber meine gesamte Konfiguration ist futsch.

Aktuell ist nur eine Site konfiguriert, ich könnte die Einstellungen also so schnell wieder rein hauen wie es dauert, den Thread zu schreiben, aber soll nicht der Sinn der Sache sein... hat wer einen Tipp für mich, was schief geht und wie ich es verhindern kann?

'Nicht updaten' ist bei einem reverse Proxy der eine Website öffentlich stellt natürlich auch keine Option.

Gruß
Rickmer
Ergänzung ()

Weitere Testergebnisse:
  • config.json und docker-compose.yml sind unverändert
  • die vorherige reverse-proxy Konfiguration ist noch am laufen und funktional, ich kann sie lediglich nicht abrufen, wie auch immer das funktioniert
  • auch wenn ich den default-User in dieselbe email und PW wie vorher umänder kommt keine Fehlermeldung. Zugriff auf die laufende Konfig erhalte ich auch nicht.

Keine Ahnung...

PS: Ein Reboot ändert auch nichts
 
Zuletzt bearbeitet:
Wie hast du den Container eingerichtet und wie lautet dein Docker Compose file?

Vor allem: Hast du die volumes richtig, dass deine Daten auch außerhalb des Containers liegen?
Ergänzung ()

Kurzfassung zu Docker:
Der Container an sich darf nie Daten enthalten. Die Daten müssen immer von extern in den Container gemounted werden, denn nur so werden die bei einem Update erhalten. Alles in dem Container wird mit dem Container ersetzt.
 
Pako1997 schrieb:
Wie hast du den Container eingerichtet und wie lautet dein Docker Compose file?

Vor allem: Hast du die volumes richtig, dass deine Daten auch außerhalb des Containers liegen?
Müsste eigentlich passen, oder zumindestens hat es die letzten paar Updates überlebt, nur jetzt will es nicht...

Siehe auch die Update-Historie:
1686204020951.png


docker-compose.yml hatte ich erstellt mit der Anleitung von Apfelcast, größtenteils entsprechend der Doku hier
Code:
version: "3"
services:
  app:
    image: jc21/nginx-proxy-manager:latest
    restart: always
    ports:
      - 80:80
      - 81:81
      - 443:443
    volumes:
      - ./config.json:/app/config/production.json
      - ./data:/data
      - ./letsencrypt:/etc/letsencrypt
    depends_on:
      - db
    environment:
    # if you want pretty colors in your docker logs:
    - FORCE_COLOR=1
  db:
    image: mariadb:latest
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: "npm"
      MYSQL_DATABASE: "npm"
      MYSQL_USER: "npm"
      MYSQL_PASSWORD: "npm"
    volumes:
      - ./data/mysql:/var/lib/mysql
Ergänzung ()

Nachtrag - die Details meiner Installation habe ich in /npm/data/nginx/proxy_host/3.conf gefunden, das ist also definitiv außerhalb des Container gespeichert.
 
Zuletzt bearbeitet:
Dieser Pfad steht aber nirgends in deiner compose.yml außer deine compose.yml liegt unter /npm/ aber das ist reine Spekulation... Klarheit hättest du wenn du keine relativen Pfade nutzen bzw. nennen würdest.

Haben sich ggf. Die Zugriffsrechte der Datei geändert? Oder betreibst Docker inzwischen rootless?
Hast du mal die Release Notes gelesen zwischen der funktionierenden Version vom nginx proxy Manager und der "kaputten" Version? Ggf. gibt es ja irgendwelche breaking changes...
 
snaxilian schrieb:
Haben sich ggf. Die Zugriffsrechte der Datei geändert? Oder betreibst Docker inzwischen rootless?
Ich habe nichts geändert

auffällig ist, dass wenn ich eine neue Konfiguration erstelle in der UI, wird diese unter /npm/data/nginx/proxy_host/1.conf gespeichert

Die alte Konfiguration in 1.conf rein kopieren macht keinen Unterschied, das wird nicht genutzt.
 
Dann hat sich vermutlich der Aufbau/Syntax der config Datei geändert. Wie gesagt: Release Notes lesen 🙃
Dicker erleichtert ggf nur den initialen Start/Installation, Betrieb ist überall gleich aufwendig.
 
Update meinerseits: Ich habe nie rausgefunden wo's schief läuft. Beim Check der Release-Notes habe ich nichts verdächtiges gefunden und eigentlich müssten alle relevanten Pfade korrekt durchgegeben werden.

Da ich bisher pro Docker-Funktion eine VM erstellt hatte, habe ich die letzten paar Tage Docker in neuer VM nochmal komplett neu aufgesetzt um dies per Portainer zu verwalten.
Dabei habe ich jetzt auch mein Pihole migriert und den nginx proxy manager neu aufgesetzt. Waren ja nur wenige Settings.

Da wird auch noch mehr hinzu kommen... u.A. wollte ich mir mal Papermerge und Paperless-ngx installieren und schauen, mit welchen der beiden DMS-Lösungen ich warm werde... für alles eine eigene VM würde da schnell sehr nervig werden.
 
Zurück
Oben