Eine Installation per SSH ist erfolgreich, aber der erste CI-Auftrag findet den Befehl nicht oder verliert nach dem Neustart den Container-Dienst.
Die schnellste Lösung ist deshalb nicht die direkte Umstellung: Apple container lässt sich auf einem geeigneten Remote-Mac einsetzen, sollte jedoch zunächst auf einem getrennten Apple-Silicon-Knoten für Dienststatus, Netzwerk, OCI-Images, CI-Ausführung und Neustartverhalten geprüft werden.
Für wen dieser Leitfaden gedacht ist:
Für Entwickler, die von Windows oder Linux aus eine macOS-native Containerumgebung verwenden möchten. Für DevOps-Teams, die einen Apple-Silicon-Knoten für Image-Builds, Integrationstests oder automatisierte Aufgaben benötigen. Für Plattformverantwortliche, die einen entfernten Mac als dauerhaften Containerknoten bewerten.
Letzte Aktualisierung: 20.08.2026. Die technischen Angaben wurden anhand des offiziellen Release-Stands 1.2.2 sowie der zugehörigen Dokumentation geprüft. Offizielles Release 1.2.2
1. Die Einsatzgrenze des Remote-Mac vor der Installation festlegen
Apple container ist kein gewöhnlicher Prozessmanager für macOS. Die Lösung erstellt und betreibt Linux-Container als leichtgewichtige virtuelle Maschinen und ist für Apple Silicon ausgelegt. Das Projekt verarbeitet OCI-kompatible Images, wodurch Images aus Registries verwendet und gebaute Images wieder veröffentlicht werden können. Daraus folgt jedoch nicht, dass jede bestehende Container-Konfiguration unverändert funktioniert. README des Release-Stands 1.2.2
Die drei wichtigsten technischen Grenzen sind:
- Hardware- und Betriebssystembindung: Für den geprüften Release-Stand wird ein Mac mit Apple Silicon und macOS 26 vorausgesetzt. Ein Zugriff per SSH, VNC oder Webkonsole verändert diese Anforderungen nicht. Ein entfernte Bedienoberfläche macht aus einem Intel-Mac oder einer älteren macOS-Version keinen kompatiblen Knoten.
- Administrationsrechte bei der Installation: Die Einrichtung benötigt ein Administrationskonto, weil Systemkomponenten und Dienste installiert werden. Das bedeutet nicht, dass ein Entwickler- oder CI-Konto dauerhaft Administratorrechte erhalten sollte.
- Kompatibilität auf Image-Ebene: OCI-Kompatibilität beschreibt das Image-Format und den Austausch mit einer Registry. Sie bestätigt nicht automatisch identisches Verhalten bei Netzwerkpfaden, Volumes, Build-Caches, Compose-Dateien, TTYs, Signalen oder Orchestrierung.
| Arbeitsszenario | Erste Entscheidung | Begründung |
|---|---|---|
| Interaktive Entwicklung per SSH | Für einen Pilotbetrieb geeignet | CLI, Image-Pull, Containerstart und Logs lassen sich kontrolliert prüfen |
| OCI-Image-Build und Registry-Push | Nach Architekturprüfung geeignet | Apple Silicon nutzt standardmäßig eine andere Zielarchitektur als manche Produktionssysteme |
| Mehrere abhängige Container | Nur nach Netzwerktest | Container-zu-Container-, Host-zu-Container- und externe Zugriffe sind getrennte Pfade |
| Unbeaufsichtigte CI-Aufträge | Zunächst isolierter Testknoten | Nicht-interaktive Shells können einen anderen PATH, andere Rechte und eine andere Signalbehandlung besitzen |
| Langfristig geteilter Knoten | Erst nach Belastungs- und Neustarttest | Ressourcenverbrauch, Bereinigung, Zugangsschutz und Wiederherstellung müssen nachgewiesen werden |
Für die erste Entscheidung gilt eine klare Regel:
- Weiter testen, wenn Apple Silicon, macOS 26, Administratorzugang für die Installation und ein isolierter Arbeitsknoten vorhanden sind.
- Nur begrenzt einsetzen, wenn Builds funktionieren, aber Netzwerkfreigaben, Neustart oder parallele Jobs noch nicht belegt sind.
- Nicht migrieren, wenn die Workloads eine bisher nicht geprüfte Orchestrierung, spezielle Kernel-Funktionen oder eine dauerhaft identische Produktionsumgebung voraussetzen.
2. Den Remote-Knoten über SSH mit getrennten Berechtigungen vorbereiten
Eine Remote-Mac-Installation sollte in zwei Rollen getrennt werden: ein Administrationskonto für die Einrichtung und ein eingeschränktes Konto für Entwicklung oder CI. Dadurch bleiben Systemänderungen, Quellcode, Zugangsdaten und Build-Artefakte besser voneinander getrennt. Für gemeinsam genutzte Knoten ist diese Trennung auch aus Sicht der DSGVO und interner Zugriffskontrollen sinnvoll.
Schritt 1: Grundvoraussetzungen dokumentieren
Melden Sie sich per SSH an und speichern Sie die Ausgangslage:
uname -m
sw_vers
id
command -v container || true
Erwartet werden eine Apple-Silicon-Architektur, macOS 26 und ein Konto, dessen Rechte zur geplanten Aufgabe passen. Die Ausgabe sollte zusammen mit Datum, Hostkennung und Release-Version archiviert werden. Eine bloße Aussage wie „Die Installation war erfolgreich“ ist für einen späteren CI-Betrieb kein ausreichender Nachweis.
Prüfen Sie außerdem, ob der Knoten ausschließlich für diesen Zweck verwendet wird oder ob bereits andere Entwicklungsdienste laufen. Hintergrundprozesse, lokale Datenbanken, synchronisierte Arbeitsverzeichnisse und vorhandene VPN-Regeln können Messergebnisse und Netzwerkprüfungen verfälschen.
Die Dokumentation des Hauptzweigs kann Änderungen enthalten, die noch nicht im stabilen Release verfügbar sind. Für einen produktionsnahen Test sollte deshalb immer der Dokumentationsstand des verwendeten Release-Tags herangezogen werden. Release-spezifische Dokumentation
Schritt 2: Das signierte Paket kontrolliert installieren
Laden Sie das Installationspaket aus der offiziellen Release-Seite und führen Sie die Installation mit dem Administrationskonto aus. Prüfen Sie vor der Ausführung, ob das Paket zum vorgesehenen Release und zur Architektur des Knotens passt.
Nach der Installation darf der alltägliche SSH- oder Runner-Benutzer nicht automatisch dieselben Rechte erhalten. Der CI-Benutzer benötigt typischerweise Zugriff auf das Arbeitsverzeichnis, die erforderlichen Registries, temporäre Dateien und den Container-Dienst, aber nicht auf beliebige Systemeinstellungen.
Prüfen Sie anschließend:
container --version
container system version
Die Versionsausgabe muss zum freigegebenen Teststand passen. Bei einer späteren Aktualisierung wird der bestehende Dienst zunächst kontrolliert beendet. Planen Sie Wartungsfenster ein, wenn auf dem Knoten laufende Testaufträge oder temporäre Build-Daten vorhanden sind.
Schritt 3: Systemdienst und Laufzeit initialisieren
Starten Sie den Dienst auf dem Remote-Mac:
container system start
container system status
Beim ersten Start kann die Installation eines passenden Linux-Kernels erforderlich sein. Der Dienst ist erst dann einsatzbereit, wenn der API-Server antwortet und ein anschließender Testbefehl ohne interaktive Eingabe funktioniert. Die offiziellen Hinweise zur Initialisierung und zum grundlegenden Ablauf finden Sie im Apple-container-Tutorial.
Achtung: Ein sichtbares Terminalfenster oder eine erfolgreiche manuelle SSH-Sitzung beweist nicht, dass ein CI-Runner denselben Dienst erreicht. Der Test muss mit einer nicht-interaktiven Shell und dem tatsächlichen Aufgabenbenutzer wiederholt werden.
Schritt 4: Einen minimalen Container starten
Führen Sie einen kleinen Starttest aus:
container list --all
container run --name smoke-test alpine:latest uname -a
container logs smoke-test
Der Test ist nur dann bestanden, wenn Image-Pull, Containerstart, Ausgabe und Exit-Code nachvollziehbar sind. Für reproduzierbare Build- und Testabläufe sollte statt eines beweglichen Tags wie latest ein festgelegter Image-Tag oder Digest verwendet werden.
Bei einem Remote-Knoten sollte zusätzlich geprüft werden, ob der Image-Pull über die vorgesehene Netzwerkverbindung stabil funktioniert. Ein einmalig erreichbares öffentliches Image sagt wenig über eine interne Registry, einen Proxy oder eine restriktive Firewall aus.
Schritt 5: Fehler- und Aufräumpfade prüfen
Ein CI-Knoten darf nicht nur erfolgreiche Aufgaben ausführen. Prüfen Sie bewusst einen fehlschlagenden Befehl, lesen Sie die Logs aus und entfernen Sie anschließend den Container:
container run --name failed-test alpine:latest sh -c 'exit 17'
printf 'Exit-Code: %s\n' "$?"
container logs failed-test
container prune
container system df
Der Exit-Code muss an den übergeordneten Runner zurückgegeben werden. Gleichzeitig darf ein Fehlerlauf keine unkontrolliert wachsenden Container, Images oder temporären Daten hinterlassen. Für einen geteilten Knoten sollte vorab festgelegt werden, welche Artefakte aufbewahrt werden und wann sie gelöscht werden.
3. Image-Builds, Architektur und Registry als geschlossene Kette prüfen
Der Build-Bereich ist für einen entfernten Apple-Silicon-Knoten besonders interessant, weil der Rechner Linux-Images erzeugen und macOS-native Werkzeuge in denselben Ablauf integrieren kann. Die Entscheidung sollte jedoch auf dem tatsächlichen Zielsystem basieren: Ein auf arm64 gebautes Image ist nicht automatisch für einen amd64-Produktionsknoten geeignet.
Die offizielle Befehlsreferenz beschreibt container build als BuildKit-basierten Build eines OCI-Images. Je nach Release stehen Optionen für Build-Kontext, Tags, Build-Argumente, Secrets, Plattformen sowie CPU- und Speichergrenzen zur Verfügung. Befehlsreferenz des Release-Stands
| Prüfpunkt | Beispiel | Nachweis |
|---|---|---|
| Build-Kontext | container build -t registry.example/app:test . |
Erfolgreicher Build und lokales Image |
| Zielarchitektur | --platform linux/arm64 oder eine geprüfte Zielplattform |
Image-Metadaten und Test auf dem Zielsystem |
| Unveränderlicher Bezug | Versions-Tag plus Digest | Digest nach Build oder Push |
| Geheimnisse | Temporäre Secret-Injektion | Keine Tokens in Shell-History oder Logs |
| Veröffentlichung | container image push ... |
Registry-Digest und erneuter Pull |
Ein möglicher kontrollierter Ablauf sieht so aus:
export IMAGE_REF="registry.example/app:ci-${CI_COMMIT_SHA}"
container build \
--platform linux/arm64 \
--progress plain \
-t "$IMAGE_REF" .
container image inspect "$IMAGE_REF"
container image push "$IMAGE_REF"
container image pull "$IMAGE_REF"
Der Registry-Host ist nur ein Platzhalter und muss durch die freigegebene interne Registry ersetzt werden. Zugangsdaten gehören in den Secret-Speicher des CI-Systems oder werden nur für die Dauer des Auftrags injiziert. Sie sollten niemals in ein Dockerfile, ein dauerhaftes Export-Skript oder einen Build-Log geschrieben werden.
Die Plattformangabe verdient besondere Aufmerksamkeit. Ein Apple-Silicon-Knoten verwendet bei vielen Abläufen standardmäßig arm64. Wenn das spätere Zielsystem amd64 benötigt, muss die Cross-Architektur-Unterstützung im konkreten Release und im konkreten Build überprüft werden. Ein Befehl, der eine Plattformoption akzeptiert, beweist noch nicht, dass das resultierende Image unter Produktionsbedingungen korrekt läuft.
Der Nachweis sollte deshalb mindestens vier Bestandteile enthalten:
- Build-Log mit eindeutigem Commit-Bezug.
- Image-Metadaten einschließlich Plattform.
- Digest des veröffentlichten OCI-Images.
- Erneuter Pull und Start auf einem unabhängigen Zielsystem.
4. Netzwerkpfade und Mehrcontainer-Anwendungen getrennt abnehmen
Ein häufiger Fehler bei Remote-Mac-Projekten besteht darin, einen erfolgreichen Zugriff innerhalb eines Containers mit vollständiger externer Erreichbarkeit zu verwechseln. Für die Abnahme sind mindestens drei Verbindungen zu prüfen:
- Container zu Container, etwa zwischen API und Datenbank.
- Host zu Container, etwa ein lokaler Health-Endpunkt.
- Externer Client zum Remote-Mac und anschließend zum veröffentlichten Container-Port.
Auf macOS 26 stellt Apple container Befehle für benutzerdefinierte Container-Netzwerke bereit. Dazu gehören das Erstellen, Auflisten, Inspizieren und Entfernen von Netzwerken. Diese Funktionen müssen jedoch mit dem tatsächlich installierten Release und der verwendeten macOS-Version geprüft werden.
| Netzwerkpfad | Test | Erwarteter Beleg |
|---|---|---|
| Container zu Container | Namensauflösung und TCP-Verbindung aus Container A zu B | Erfolgreiche Verbindung mit Zielname und Port |
| Mac zu Container | curl auf den veröffentlichten Host-Port |
HTTP-Status oder definierter Fehler |
| Extern zum Remote-Mac | Zugriff von der Entwicklungsstation über die freigegebene Adresse | Antwort außerhalb der Remote-Sitzung |
| DNS-Ausfall | Temporär falsche Auflösung oder nicht erreichbarer Dienst | Klare Fehlermeldung und Logeintrag |
| Neustart | Wiederholung der drei Pfade nach Dienststart | Keine Abhängigkeit von alter Sitzung |
Ein minimales Beispiel für einen benutzerdefinierten Netzwerkpfad ist:
container network create ci-net
container run -d --name service-a --network ci-net registry.example/service-a:test
container run -d --name service-b --network ci-net registry.example/service-b:test
container network inspect ci-net
Die verwendeten Images und Befehle müssen im konkreten Release geprüft werden. Eine bestehende Compose-Datei darf nicht automatisch übernommen werden, weil sie Annahmen über Volumes, Netzwerke, Healthchecks, Ports und Signalweitergabe enthalten kann.
Besonders wichtig ist die Richtung des Zugriffs. Wenn ein Container einen Dienst auf dem Remote-Mac erreicht, bedeutet das nicht, dass ein Entwicklerarbeitsplatz denselben Dienst über das Internet oder ein Unternehmensnetz erreicht. Firewall, Portfreigabe, DNS, VPN und Zugriffslisten müssen getrennt dokumentiert werden.
5. Einen unbeaufsichtigten CI-Auftrag realistisch nachbilden
Die CI-Prüfung sollte nicht als verkürzte SSH-Demonstration angelegt werden. Ein Runner startet normalerweise ohne TTY, verwendet einen eigenen Benutzer und besitzt einen anderen PATH. Außerdem müssen Abbruchsignale, Zeitüberschreitungen und parallele Aufträge berücksichtigt werden.
Ein minimaler Pipeline-Ablauf besteht aus sechs Stufen:
- Arbeitsverzeichnis anlegen und Quellcode auschecken.
container system statusausführen.- Image bauen oder aus der Registry laden.
- Testcontainer mit eindeutigem Namen starten.
- Logs, Testergebnisse und Exit-Code sichern.
- Container und temporäre Ressourcen unabhängig vom Ergebnis bereinigen.
Beispielhaft kann ein Skript so strukturiert werden:
#!/bin/bash
set -Eeuo pipefail
IMAGE_REF="registry.example/app:${CI_COMMIT_SHA}"
CONTAINER_NAME="ci-${CI_JOB_ID}"
cleanup() {
container logs "$CONTAINER_NAME" 2>/dev/null || true
container stop "$CONTAINER_NAME" 2>/dev/null || true
container rm "$CONTAINER_NAME" 2>/dev/null || true
}
trap cleanup EXIT
container system status
container build --progress plain -t "$IMAGE_REF" .
container run --name "$CONTAINER_NAME" "$IMAGE_REF" ./run-tests.sh
Der entscheidende Punkt ist nicht die exakte Syntax, sondern die Kontrollierbarkeit: Der Auftragsstatus muss aus dem Prozess-Exit-Code stammen, Logs müssen auch bei Fehlern erhalten bleiben und die Bereinigung muss mehrfach ausführbar sein.
Für parallele Aufgaben sollten Sie mindestens folgende Punkte prüfen:
| Betriebsfall | Zu prüfende Bedingung | Rückfallentscheidung |
|---|---|---|
| Ein einzelner Build | Image wird gebaut, gestartet und bereinigt | Pilotbetrieb möglich |
| Zwei parallele Builds | Keine Namens-, Port- oder Cache-Kollision | Nur mit klarer Ressourcenbegrenzung erweitern |
| Abgebrochener Auftrag | Container und temporäre Daten werden entfernt | Bereinigung vor weiterer Skalierung verbessern |
| Registry-Ausfall | Pipeline beendet sich kontrolliert und liefert Logs | Lokalen Cache nicht als dauerhafte Registry einplanen |
| SSH-Abbruch | Auftrag läuft nach Sitzungsende definiert weiter oder wird beendet | Runner- und Sitzungsmodell anpassen |
Die Prüfung muss außerdem klären, ob der CI-Prozess nach einem Verbindungsabbruch weiterlaufen soll. Für lange Builds ist eine vom SSH-Terminal unabhängige Runner-Ausführung erforderlich. Für kurze interaktive Tests kann ein Abbruch dagegen erwünscht sein. Beide Fälle sollten nicht mit demselben Standardverhalten behandelt werden.
Häufige Fragen zur Remote-Bereitstellung
Kann Apple container über SSH auf dem Remote-Mac laufen?
Ja, die Bedienung über SSH ist grundsätzlich möglich, wenn der Zielknoten die offiziellen Voraussetzungen erfüllt und der Systemdienst bereits eingerichtet wurde. Für die tägliche Arbeit genügt die CLI; ein grafischer Fernzugriff ist für Build- und CI-Aufgaben nicht erforderlich. Der SSH-Test sollte jedoch mit genau dem Konto und der Shell ausgeführt werden, die später auch der Runner verwendet.
Ersetzt Apple container eine bestehende Container-Desktop-Umgebung?
Für einfache Linux-Container, kontrollierte Builds und isolierte Testaufgaben kann Apple container eine sinnvolle Alternative sein. Eine vollständige Ablösung ist aber erst vertretbar, wenn Netzwerk-, Volume-, Cache-, Registry- und Orchestrierungsanforderungen einzeln nachgewiesen wurden. OCI-Image-Kompatibilität ist ein wichtiger Baustein, ersetzt aber keinen Ablaufvergleich mit den bestehenden Entwicklungs- und CI-Skripten.
Wie werden OCI-Images gebaut und veröffentlicht?
Der Build erfolgt über container build mit einem Dockerfile oder Containerfile. Danach sollte das Image mit einer unveränderlichen Referenz versehen und über container image push veröffentlicht werden. Der Push gilt erst als geprüft, wenn ein Digest dokumentiert und das Image erneut aus der Registry geladen oder auf einem zweiten Ziel gestartet wurde. Plattformangaben müssen zum späteren Einsatzsystem passen.
Eignet sich der Dienst für unbeaufsichtigte CI?
Ein geprüfter Remote-Mac kann als einzelner CI-Knoten für Builds und automatisierte Tests dienen. Er eignet sich jedoch nicht automatisch als gemeinsam genutzte Plattform für beliebige Workloads. PATH, Benutzerrechte, Secrets, parallele Ports, Abbruchsignale, Logs und Aufräumprozesse müssen in einer nicht-interaktiven Ausführung funktionieren. Erst danach sollte der Knoten an einen produktiven Runner angebunden werden.
Wie wird der Betrieb nach einem Neustart abgesichert?
Nach jedem Neustart müssen Dienststatus, Systeminitialisierung, Registry-Zugriff, Image-Verfügbarkeit und ein kurzer Testlauf geprüft werden. Der Betriebsablauf sollte nicht voraussetzen, dass eine alte SSH-Sitzung offen bleibt. Wenn der automatische Start nicht zuverlässig nachgewiesen ist, wird container system start als expliziter Wiederherstellungsschritt in den Runner- oder Monitoring-Prozess aufgenommen.
6. Mit einer Abnahme-Checkliste zwischen Pilot und Produktion entscheiden
Die folgende Liste eignet sich als Übergabeprotokoll. Ein nicht erfüllter Punkt ist kein kleiner Schönheitsfehler, sondern sollte die nächste Ausbaustufe begrenzen.
- [ ] Apple-Silicon-Hardware des Remote-Mac wurde dokumentiert.
- [ ] macOS 26 und der freigegebene Apple-container-Release wurden bestätigt.
- [ ] Die Installation erfolgte mit einem Administrationskonto.
- [ ] Der tägliche SSH- oder CI-Benutzer besitzt nur die erforderlichen Rechte.
- [ ]
container system statusfunktioniert ohne interaktive Eingabe. - [ ] Ein Basis-Image wurde erfolgreich geladen und gestartet.
- [ ] Container-Logs und Exit-Codes sind im Fehlerfall verfügbar.
- [ ] Ein Image wurde gebaut und mit einer eindeutigen Referenz versehen.
- [ ] Der Image-Digest wurde nach dem Push dokumentiert.
- [ ] Ein erneuter Pull auf einem unabhängigen Ziel wurde durchgeführt.
- [ ] Container-zu-Container-Kommunikation wurde geprüft.
- [ ] Host-zu-Container-Kommunikation wurde geprüft.
- [ ] Externer Zugriff auf den Remote-Mac wurde separat geprüft.
- [ ] Registry-Zugangsdaten erscheinen nicht in Skripten oder Logs.
- [ ] Ein abgebrochener Auftrag hinterlässt keine unkontrollierten Container.
- [ ] Zwei parallele Testaufträge wurden mit eindeutigen Namen ausgeführt.
- [ ] Speicher- und Festplattenverbrauch wurden vor und nach den Tests verglichen.
- [ ] Der Knoten wurde neu gestartet.
- [ ] Dienst, Netzwerk und ein vollständiger Testauftrag liefen danach erneut.
- [ ] Ein Rückfall auf die bisherige Containerplattform ist dokumentiert.
Für einen Entwicklungs-Pilotknoten genügt es, wenn die interaktive Nutzung, der Image-Lebenszyklus und die grundlegende Netzwerkverbindung stabil funktionieren. Für einen temporären CI-Knoten müssen zusätzlich nicht-interaktive Ausführung, Fehlerbereinigung und Neustart nachgewiesen werden. Ein langfristig geteilter Knoten sollte erst freigegeben werden, wenn Ressourcenverbrauch, Benutzertrennung, Datenaufbewahrung und Wiederherstellung über mehrere Testzyklen beobachtet wurden.
7. Den Remote-Mac als Prüfstand statt als ungeprüften Ersatz einsetzen
Ein eigener Mac mini oder eine vorhandene lokale Maschine bietet direkte Hardwarekontrolle, verursacht aber bei kurzfristigen Projekten, zusätzlichen Testknoten und Ausweichkapazitäten eine langfristige Bindung an Hardware, Wartung und Standort. Ein Linux-Cloudserver ist für viele Backend-Aufgaben geeignet, erfüllt jedoch nicht die Apple-Silicon- und macOS-Anforderungen dieses Werkzeugs. Eine virtuelle oder nicht unterstützte macOS-Umgebung bringt zusätzliche Unsicherheiten bei Berechtigungen, Virtualisierung, Netzwerk und Wartung mit sich.
Ein gemieteter Remote-Mac von RUVCLOUD ist deshalb vor allem dann sinnvoll, wenn zunächst ein unabhängiger Apple-Silicon-Knoten für einen begrenzten Zeitraum benötigt wird: zur Prüfung eines OCI-Builds, zur Anbindung eines CI-Runners oder zur Beobachtung des Neustartverhaltens. Verfügbare Mietoptionen von RUVCLOUD können dabei mit der geplanten Testdauer und dem benötigten Zugriff abgeglichen werden. Für einen dauerhaft ausgelasteten, streng kontrollierten Produktionsknoten oder für Anforderungen an physische Schnittstellen bleibt eigene Hardware möglicherweise die passendere Wahl.
Wer die Abnahme vollständig durchführen möchte, kann zunächst einen Remote-Mac als getrennten Validierungsknoten bereitstellen und anschließend anhand der Ergebnisse zwischen begrenztem Einsatz, Parallelbetrieb und vollständiger Umstellung entscheiden. Remote-Mac-Zugang bei RUVCLOUD sollte erst dann als nächste Stufe betrachtet werden, wenn Image-Push, Netzwerk, CI-Auftrag und Wiederherstellung nach dem Neustart tatsächlich belegt sind.