Hallo zusammen,
ich habe eine grundsätzliche Verständnisfrage und die Antworten der Profis im Bekanntenkreis helfen mir nicht wirklich weiter.
Ich betreibe ein kleines Home Lab auf Proxmox-Basis. Die Dienste laufen auf lxc-Containern und als Software nutze ich meistens Anwendunsgcontainer von Turnkey-Linux. Ich habe mich für die lxc-Container entschieden, weil mein Server hardwareseitig eher klein ausgestattet ist, (daher VMs nur in Sonderfällen und temporär) und weil mir Sicherheitsupdates einfacher zu realisieren schienen als mit Docker. Außerdem sind beide Konzepte (lxc und Turnkey-Linux) gut in Proxmox integriert.
Nach einigen Jahren Betrieb stelle ich jetzt aber fest, das manche Anwendungen Probleme bereiten, wenn ich auf eine neue Version der Anwendungscontainer von Turnkey-Linux wechseln will. Entscheidender Punkt dabei ist, dass ich meine Anwendungsdaten einfach im Container liegen lasse und nicht auf Plattenbereiche des Hosts mappe. Schien mir ausreichend, da in meinem Betrieb nur geringe Datenmengen anfallen. Aktuelles Beispiel ist Gitea. Um auf die neue Version des Containers wechseln zu können, muss ich sämtliche Anwendungsdaten exportieren und in den neuen Container wieder importieren. Klingt erstmal einfach, gestaltet sich im Detail aber schwierig. Bei Gitea gibt es z.B. keine einfache Import-Funktion, man muss da dann mit Datenbankmitteln händisch arbeiten. Alles machbar, aber deutlich aufwendiger als ich es haben möchte.
Daher möchte ich zum einen sicherstellen, dass meine grundsätzliche Herangehensweise korrekt ist. Ist meine Installation mit lxc und den Turnkey-Containern sinnvoll oder macht man das heutzutage anders?
Die andere Frage wäre, ob Ihr Lösungsvorschläge für mein Update-Problem habt. Muss ich in den sauren Apfel beißen und (im aktuellen Beispiel) den Datenbankimport händisch machen? Oder ist es sinnvoll, sich jede Anwendung genauer anzusehen und dann die Verzeichnisse, in denen Anwendungsdaten liegen, auf Plattenbereiche des Hosts zu mappen und die dann einfach wieder in den neuen Containmer einbinden und die Applikation dann eventuell notwendige Datenmigrationn machen zu lassen?
Bis jetzt hatten die Turnkey-Linux-Container für mich den Vorteil, dass ich mich mit den einzelnen Anwendungen nicht großartig auseinandersetzen musste, einfach installieren und läuft. (Bei Anwendungen, die von draußen erreichbar sind, mache ich das natürlich nicht. Davon habe ich aber nur zwei.) Der Vorteil fiele halt weg, wenn ich mich mit den internen Dateistrukturen auseinandersetzen müsste.
Vielen Dank schon mal für Eure Hilfe
Thorsten
ich habe eine grundsätzliche Verständnisfrage und die Antworten der Profis im Bekanntenkreis helfen mir nicht wirklich weiter.
Ich betreibe ein kleines Home Lab auf Proxmox-Basis. Die Dienste laufen auf lxc-Containern und als Software nutze ich meistens Anwendunsgcontainer von Turnkey-Linux. Ich habe mich für die lxc-Container entschieden, weil mein Server hardwareseitig eher klein ausgestattet ist, (daher VMs nur in Sonderfällen und temporär) und weil mir Sicherheitsupdates einfacher zu realisieren schienen als mit Docker. Außerdem sind beide Konzepte (lxc und Turnkey-Linux) gut in Proxmox integriert.
Nach einigen Jahren Betrieb stelle ich jetzt aber fest, das manche Anwendungen Probleme bereiten, wenn ich auf eine neue Version der Anwendungscontainer von Turnkey-Linux wechseln will. Entscheidender Punkt dabei ist, dass ich meine Anwendungsdaten einfach im Container liegen lasse und nicht auf Plattenbereiche des Hosts mappe. Schien mir ausreichend, da in meinem Betrieb nur geringe Datenmengen anfallen. Aktuelles Beispiel ist Gitea. Um auf die neue Version des Containers wechseln zu können, muss ich sämtliche Anwendungsdaten exportieren und in den neuen Container wieder importieren. Klingt erstmal einfach, gestaltet sich im Detail aber schwierig. Bei Gitea gibt es z.B. keine einfache Import-Funktion, man muss da dann mit Datenbankmitteln händisch arbeiten. Alles machbar, aber deutlich aufwendiger als ich es haben möchte.
Daher möchte ich zum einen sicherstellen, dass meine grundsätzliche Herangehensweise korrekt ist. Ist meine Installation mit lxc und den Turnkey-Containern sinnvoll oder macht man das heutzutage anders?
Die andere Frage wäre, ob Ihr Lösungsvorschläge für mein Update-Problem habt. Muss ich in den sauren Apfel beißen und (im aktuellen Beispiel) den Datenbankimport händisch machen? Oder ist es sinnvoll, sich jede Anwendung genauer anzusehen und dann die Verzeichnisse, in denen Anwendungsdaten liegen, auf Plattenbereiche des Hosts zu mappen und die dann einfach wieder in den neuen Containmer einbinden und die Applikation dann eventuell notwendige Datenmigrationn machen zu lassen?
Bis jetzt hatten die Turnkey-Linux-Container für mich den Vorteil, dass ich mich mit den einzelnen Anwendungen nicht großartig auseinandersetzen musste, einfach installieren und läuft. (Bei Anwendungen, die von draußen erreichbar sind, mache ich das natürlich nicht. Davon habe ich aber nur zwei.) Der Vorteil fiele halt weg, wenn ich mich mit den internen Dateistrukturen auseinandersetzen müsste.
Vielen Dank schon mal für Eure Hilfe
Thorsten