Wir entwickeln eine App, die vor Ort für verschiedene Installationen (nicht für die Cloud) bereitgestellt werden soll. Unser OEM-Partner bittet uns, ihnen eine ISO zur Verfügung zu stellen, damit wir schnell neue Server bereitstellen können. Unsere App basiert auf Containern und wir haben ein privates Registrierungs-Setup für das Internet, um die neuesten Builds abrufen zu können. Ich bin mir noch nicht sicher, ob der OEM-Partner diese Bilder selbst abrufen kann. Daher prüfen wir die Möglichkeit, die Docker-Bilder zusammen mit der ISO vorab zu verpacken, haben jedoch einige Schwierigkeiten. Einige Dinge, die wir versucht haben:
Systemback - Wir haben versucht, eine neue Ubuntu-Installation mit unserem bevorzugten Setup (wie durch eine Ansible-Rolle definiert) bereitzustellen und das Ergebnis dann mit Systemback zu erfassen. Bei der Neuinstallation der resultierenden ISO wird ein Docker-Fehler angezeigt :
Error response from daemon: open /var/lib/docker/aufs/layers/blahblahblah: no such file or directory
ähnlich wie bei # 22343chroot jail - Wir haben erneut versucht, unseren Benutzer zu erstellen und Docker zu installieren, aber beim Versuch, unsere Bilder abzurufen, werden wir begrüßt:
failed to register layer: Error processing tar file(exit status 1): invalid argument
unabhängig davon, welches Bild wir abrufen (zum Beispiel sogar ein offizielles Docker-Ubuntu-Bild). Google hilft bei diesem Fehler nicht weiter.RancherOS - Hier haben wir Anweisungen zum Vorverpacken von Docker-Bildern gefunden, aber nicht zum Bündeln mit der ISO . Es sieht so aus, als hätten wir den gleichen Anwendungsfall wie # 1449, aber es gibt keine wirkliche Lösung.
Jetzt kann ich nur noch versuchen, als nächstes docker save
unsere Bilder zu versuchen und die Tarballs in die ISO aufzunehmen. Führen Sie dann beim ersten Starten der ISO ein Skript aus, um zu überprüfen, ob die Docker-Bilder vorhanden sind oder nicht, und wenn nicht, führen Sie docker load
jeweils ein und aus Führen Sie sie dann aus, obwohl dies extrem hackig und unzuverlässig erscheint. Ich habe mich gefragt, ob jemand Erfahrung mit solchen Dingen hat und mich möglicherweise in die richtige Richtung weisen kann.
docker load
ist , wofür es ist.