Startseite
» Gewusst wie
»
Collabora-Code auf ARM64 mit dem richtigen Image ausführen
Collabora-Code auf ARM64 mit dem richtigen Image ausführen
Ein Collabora CODE-Container, der auf einem ARM64-Host sofort beendet wird, verwendet häufig die falsche Image-Plattform. ARM64 selbst wird jedoch nicht grundsätzlich nicht unterstützt. Überprüfen Sie zunächst die Bit-Architektur des Hosts, das veröffentlichte Manifest des entsprechenden Image-Tags und alle Compose-Plattformüberschreibungen, bevor Sie Berechtigungen ändern oder das Image neu erstellen. Stand 10. Oktober 2026 enthält das offizielle CODE-Image ARM64-Builds; Docker Hub listet den 26.04.4.2.1Tag für linux/arm64.
Beginnen Sie mit den Befehlen für Host und Docker-Architektur; vergleichen Sie deren Ergebnisse mit der Image-Plattform, die Sie ausführen möchten.
1. Identifizieren Sie die Host-Architektur und den genauen Startfehler.
Führen Sie diese Befehle auf dem Docker-Host aus, nicht innerhalb des gestoppten Collabora-Containers. Ersetzen Sie den Namen, collaborafalls Ihr Compose-Dienst einen anderen Namen verwendet:
uname -m
docker info --format '{{.Architecture}}'
docker compose ps -a
docker compose logs --tail=100 collabora
Ein 64-Bit-ARM-Linux-Host meldet üblicherweise einen Wert aarch64von uname -m. Ein Wert wie armv7lidentifiziert in der Regel eine 32-Bit-ARM-Kernel-Plattform, die sich von unterscheidet linux/arm64. Die Architekturbezeichnung von Docker kann eine andere Schreibweise verwenden. Vergleichen Sie daher den Hosttyp, die Compose-Konfiguration und das Image-Manifest, anstatt eine einzelne Zeichenkette mechanisch abzugleichen.
Lesen Sie die erste Fehlermeldung und den Exit-Status. „Kein passendes Manifest für linux/arm64“ bedeutet, dass für das ausgewählte Tag keine passende Variante für die angeforderte Plattform existiert. „Fehler im Ausführungsformat“ deutet auf eine Architekturinkompatibilität oder eine explizit erzwungene fremde Plattform hin. Ein Berechtigungsfehler oder ein Abbruch aufgrund von Speichermangel hat eine andere Ursache; behandeln Sie nicht jede Neustartschleife als ARM-Kompatibilitätsproblem.
2. Bestätigen Sie, dass das Tag ein ARM64-Image veröffentlicht.
Prüfen Sie das Tag in der Registry, bevor Sie den Host ändern:
Suchen Sie linux/arm64in der Plattformliste danach. Am 10. Oktober 2026 zeigte die offizielle Docker Hub-Tag-Liste diese Plattform für beide latestan 26.04.4.2.1. Auf der Collabora -CODE-Seite werden x86-64, ppc64 und arm64 als unterstützte Host-Architekturen aufgeführt. Der versionierte Tag ist bei der Fehlersuche leichter nachvollziehbar. Tags und Manifeste können sich ändern. Prüfen Sie daher die genaue Version, die Sie bereitstellen möchten, anstatt anzunehmen, dass alle älteren Tags dieselben Architekturen aufweisen.
Der angegebene Release-Tag verfügt über eine native ARM64-Variante sowie amd64 und ppc64le; überprüfen Sie die Live-Registry auf den von Ihnen verwendeten Tag.
Docker wählt automatisch eine passende Variante aus, wenn das Tag plattformübergreifend ist und keine Überschreibung das Ziel ändert. Der Docker -Befehl zur Image-Inspektion zeigt die für ein Registry-Image veröffentlichten Plattformen an.
3. Entfernen Sie die AMD64-Überschreibung und verwenden Sie die native Variante.
Überprüfen Sie den aufgelösten Compose-Dienst, einschließlich der Überschreibungsdateien, auf eine erzwungene Überschreibung platform: linux/amd64. Die Docker-CLI-Variable DOCKER_DEFAULT_PLATFORMkann auch die Standardplattform für Befehle festlegen, die ein Plattform-Flag akzeptieren. Das Compose- platformFeld wählt explizit das Zielbetriebssystem und die Architektur aus. Entfernen Sie daher eine fehlerhafte Überschreibung oder setzen Sie sie auf ARM64. Falls vorhanden jq, überprüfen Sie die zusammengeführten Einstellungen, ohne irrelevante Umgebungswerte auszugeben docker compose config --format json | jq '.services.collabora | {image, platform}'. Die Compose-Dienstreferenz definiert dieses Feld. DOCKER_DEFAULT_PLATFORMWeitere Informationen finden Sie in der Docker-CLI-Referenz .
Verwenden Sie dieses Compose-Fragment, um die verifizierte Version auszuwählen und, falls erforderlich, explizit linux/arm64 als Zielplattform anzugeben.
Dies ist ein Codefragment: Fügen Sie die Zeilen für Image und Plattform in Ihren bestehenden Dienst ein und behalten Sie die erforderlichen Einstellungen bei. Wenn Docker das native ARM64-Manifest bereits korrekt auswählt, platformist diese Zeile optional. Ersetzen Sie die Zeile collaborain den folgenden Befehlen, falls Ihr Compose-Dienst einen anderen Namen hat.
docker compose pull collabora
docker compose up -d --force-recreate collabora
Verwenden Sie das angegebene Tag oder eine andere Version, deren Manifest Sie gerade verifiziert haben. Das latest-arm64Tag wird auch von Docker Hub angezeigt, sein Inhalt ändert sich jedoch mit jeder neuen Version. Durch das Festlegen einer Version wird ein Rollback und ein späterer Vergleich vorhersehbarer. Vermeiden Sie es, linux/amd64die Emulation als erste Lösung zu erzwingen, wenn ein natives ARM64-Image verfügbar ist; die Emulation verursacht zusätzlichen Aufwand und erschwert die Diagnose beim Start.
4. Nicht-Architekturfehler diagnostizieren und anschließend den Startvorgang überprüfen.
Falls das native Image noch existiert, verwenden Sie das Protokoll und den Status, anstatt die Containerberechtigungen zu erweitern:
Nachdem der Dienst neu erstellt wurde, können Sie mit diesen Befehlen überprüfen, ob Compose den Container am Laufen hält und seine Startmeldungen lesen.
Signal
Nächste Aktion
no matching manifest
Überprüfen Sie das genaue Tag und die ausgewählte Plattform; wählen Sie ein Tag, das Folgendes auflistet linux/arm64:
exec format error
Entfernen Sie eine AMD64-Überschreibung, ziehen Sie das Image erneut und überprüfen Sie die lokale Image-Architektur.
Überprüfen Sie die eingebundenen Dateien und Verzeichnisse, deren Eigentümer und Zugriffsrechte sowie die erwarteten Zugriffsrechte des Containers. Korrigieren Sie die spezifische Einbindung, anstatt `bind` chmod -R 777oder `bind` zu verwenden privileged: true.
OOMKilled=true, oft mit dem Exit-Code 137
Prüfen Sie die Speicherauslastung des Hosts und etwaige Speichergrenzen des Containers; der Exit-Code 137 allein beweist noch keinen OOM-Kill.
Verwenden Sie den angezeigten Containernamen oder die ID, docker compose ps -aum dessen Exit-Status zu überprüfen:
Docker protokolliert die Containerprüfung und die Containerprotokolle für diese Überprüfungen. Löschen Sie keine persistenten Volumes und setzen Sie den gesamten Container nicht auf erhöhte Berechtigungen, nur um ein Architekturproblem zu testen.
Überprüfen Sie das heruntergeladene Image und den laufenden Dienst.
Bestätigen Sie, dass das lokale Image die Zielarchitektur meldet:
Der erwartete Wert ist linux/arm64. Überprüfen Sie anschließend docker compose ps -aden stabilen Betriebszustand und die aktuellen Protokolle auf schwerwiegende Startfehler. Sobald der Container mit Ihrer Speicherplattform oder Ihrem Reverse-Proxy verbunden ist, fordern Sie ihn /hosting/discoveryüber die konfigurierte Collabora-URL an und öffnen Sie ein Testdokument. Überprüfen Sie vor Aktualisierungen die Tag-Liste der Registry erneut, da sich die verfügbaren Versionen und Plattformmanifeste ändern können.