Home
» Come fare
»
Ottieni Collabora CODE in esecuzione su ARM64 con l'immagine corretta
Ottieni Collabora CODE in esecuzione su ARM64 con l'immagine corretta
Un container Collabora CODE che si arresta immediatamente su un host ARM64 spesso utilizza la piattaforma immagine errata, ma ARM64 di per sé non è intrinsecamente non supportato. Inizia controllando l'architettura (32 o 64 bit) dell'host, il manifest pubblicato del tag immagine esatto e qualsiasi override della piattaforma Compose prima di modificare le autorizzazioni o ricostruire l'immagine. Come verificato il 10 ottobre 2026, l'immagine CODE ufficiale include build ARM64; Docker Hub elenca il 26.04.4.2.1tag per linux/arm64.
Iniziate con i comandi relativi all'architettura host e Docker; confrontate i risultati con la piattaforma di immagini che intendete utilizzare.
1. Identificare l'architettura host e l'errore di avvio esatto
Esegui questi comandi sull'host Docker, non all'interno del container Collabora arrestato. Sostituisci il nome collaborase il tuo servizio Compose utilizza un nome diverso:
uname -m
docker info --format '{{.Architecture}}'
docker compose ps -a
docker compose logs --tail=100 collabora
Un host Linux ARM a 64 bit in genere riporta aarch64da uname -m. Un valore come armv7ldi solito identifica una piattaforma kernel ARM a 32 bit, che è diversa da linux/arm64. L'etichetta dell'architettura di Docker potrebbe usare un'ortografia diversa, quindi confronta il tipo di host, la configurazione di Compose e il manifesto dell'immagine piuttosto che far corrispondere meccanicamente una stringa.
Leggere il primo messaggio di errore irreversibile e lo stato di uscita. "Nessun manifesto corrispondente per linux/arm64" significa che il tag selezionato non ha una variante corrispondente per la piattaforma richiesta. "Errore di formato Exec" suggerisce un'incompatibilità di architettura o una piattaforma esterna forzata esplicitamente. Un errore di autorizzazione o un'interruzione per esaurimento della memoria hanno una causa diversa; non considerare ogni ciclo di riavvio come un errore di compatibilità ARM.
2. Verificare che il tag pubblichi un'immagine ARM64
Prima di modificare l'host, verifica il tag nel registro di sistema:
Cerca linux/arm64nell'elenco delle piattaforme. Il 10 ottobre 2026, l' elenco ufficiale dei tag di Docker Hub mostrava quella piattaforma sia per latestche per . La pagina CODE26.04.4.2.1 di Collabora identifica x86-64, ppc64 e arm64 come architetture host supportate. Il tag con versione è più facile da riprodurre durante la risoluzione dei problemi. I tag e i manifest possono cambiare, quindi controlla la versione esatta che intendi distribuire invece di presumere che ogni tag storico abbia le stesse architetture.
Il tag di rilascio elencato ha una variante nativa ARM64 oltre ad amd64 e ppc64le; controlla il registro live per il tag che utilizzi.
3. Rimuovere l'override AMD64 e scaricare la variante nativa
Controlla il servizio Compose risolto, inclusi i file di override, per un platform: linux/amd64. La variabile Docker CLI DOCKER_DEFAULT_PLATFORMpuò anche impostare la piattaforma predefinita per i comandi che accettano un flag di piattaforma. platformIl campo di Compose seleziona esplicitamente il sistema operativo e l'architettura di destinazione, quindi rimuovi un override errato o impostalo su ARM64. Se hai jq, ispeziona le impostazioni unite senza stampare valori di ambiente non correlati: docker compose config --format json | jq '.services.collabora | {image, platform}'. Il riferimento al servizio Compose definisce questo campo. DOCKER_DEFAULT_PLATFORMè documentato nel riferimento Docker CLI .
Utilizza questo frammento di Compose per selezionare la versione verificata e, se necessario, specificare esplicitamente come target linux/arm64.
Questo è un frammento: unisci le righe relative all'immagine e alla piattaforma al tuo servizio esistente e mantieni le impostazioni richieste. Se Docker seleziona già correttamente il manifesto nativo ARM64, la platformriga è facoltativa. Sostituiscila collaboranei comandi seguenti se il tuo servizio Compose ha un nome diverso.
docker compose pull collabora
docker compose up -d --force-recreate collabora
Utilizza il tag bloccato come mostrato o un'altra release di cui hai appena verificato il manifest. Il latest-arm64tag è elencato anche da Docker Hub, ma il suo contenuto cambia al variare delle release. Bloccare una versione rende più prevedibili un eventuale rollback e un confronto successivo. Evita di forzare linux/amd64l'emulazione come prima soluzione quando è disponibile un'immagine nativa ARM64; l'emulazione aggiunge overhead e rende la diagnosi all'avvio meno diretta.
4. Diagnosticare i guasti non relativi all'architettura, quindi verificare l'avvio.
Se l'immagine nativa esiste ancora, utilizzare il log e lo stato anziché ampliare i privilegi del container:
Dopo aver ricreato il servizio, utilizza questi comandi per verificare se Compose mantiene il container in esecuzione e per leggere i relativi messaggi di avvio.
Segnale
Azione successiva
no matching manifest
Verifica il tag esatto e la piattaforma selezionata; scegli un tag che elenca linux/arm64.
exec format error
Rimuovi l'override AMD64, esegui nuovamente il download e controlla l'architettura dell'immagine locale.
permission deniedoppure il file di configurazione è illeggibile
Controlla i file e le directory montati tramite bind, il loro proprietario e la loro modalità, nonché l'accesso previsto del contenitore. Correggi il mount specifico invece di usare chmod -R 777o privileged: true.
OOMKilled=truespesso con codice di uscita 137
Verificare la pressione della memoria host e gli eventuali limiti di memoria del container; il codice di uscita 137 da solo non dimostra un'interruzione per esaurimento della memoria (OOM).
Utilizzare il nome o l'ID del contenitore visualizzato docker compose ps -aper ispezionarne lo stato di uscita:
Docker documenta l'ispezione dei container e i log dei container per questi controlli. Non eliminare i volumi persistenti né concedere privilegi elevati all'intero container solo per testare un problema di architettura.
Controlla l'immagine scaricata e il servizio in esecuzione
Conferma che l'immagine locale riporti l'architettura di destinazione:
Il valore previsto è linux/arm64. Quindi verifica docker compose ps -ache lo stato di esecuzione sia stabile e rivedi i log più recenti per individuare eventuali errori di avvio irreversibili. Una volta che il container è connesso alla piattaforma di archiviazione o al proxy inverso, effettua una richiesta /hosting/discoverytramite l'URL di Collabora configurato e apri un documento di prova. Ricontrolla l'elenco dei tag del registro prima degli aggiornamenti, poiché le versioni disponibili e i manifest della piattaforma possono cambiare.