Uruchomienie kodu Collabora na architekturze ARM64 z poprawnym obrazem

Kontener Collabora CODE, który natychmiast działa na hoście ARM64, często korzysta z niewłaściwej platformy obrazów, ale sam ARM64 nie jest z natury nieobsługiwany. Przed zmianą uprawnień lub przebudową obrazu należy sprawdzić bitowość hosta, opublikowany manifest konkretnego znacznika obrazu oraz wszelkie nadpisania platformy Compose. Zgodnie z informacjami z 10 października 2026 r., oficjalny obraz CODE zawiera kompilacje ARM64; Docker Hub wymienia znacznik 26.04.4.2.1dla linux/arm64.

Terminal z poleceniami umożliwiającymi sprawdzanie architektury jądra hosta i architektury silnika Docker.
Zacznij od poleceń dotyczących hosta i architektury Dockera; porównaj ich wyniki z wynikami platformy obrazów, którą planujesz uruchomić.

1. Zidentyfikuj architekturę hosta i dokładny błąd uruchamiania

Uruchom te polecenia na hoście Dockera, a nie w zatrzymanym kontenerze Collabora. Zastąp je, collaborajeśli usługa Compose używa innej nazwy:

uname -m
docker info --format '{{.Architecture}}'
docker compose ps -a
docker compose logs --tail=100 collabora

64-bitowy host ARM Linux zazwyczaj raportuje aarch64z uname -m. Wartość taka jak armv7lzazwyczaj identyfikuje 32-bitową platformę jądra ARM, która różni się od linux/arm64. Etykieta architektury Dockera może mieć inną pisownię, dlatego należy porównać typ hosta, konfigurację Compose i manifest obrazu, zamiast mechanicznie dopasowywać jeden ciąg znaków.

Przeczytaj pierwszy komunikat krytyczny i stan wyjścia. Komunikat „Brak pasującego manifestu dla systemu Linux/arm64” oznacza, że ​​wybrany tag nie ma pasującego wariantu dla żądanej platformy. Komunikat „Błąd formatu pliku wykonywalnego” sugeruje niezgodność architektury lub jawne wymuszenie obcej platformy. Błąd uprawnień lub zamknięcie z powodu braku pamięci ma inną przyczynę; nie traktuj każdej pętli restartu jako błędu zgodności z ARM.

2. Sprawdź, czy tag publikuje obraz ARM64

Przed zmianą hosta sprawdź tag w rejestrze:

docker buildx imagetools inspect collabora/code:26.04.4.2.1

Szukaj linux/arm64na liście platform. 10 października 2026 roku oficjalna lista tagów Docker Hub pokazała, że ​​platforma jest obsługiwana zarówno przez platformę, latestjak i . Strona CODE26.04.4.2.1 Collabora identyfikuje x86-64, ppc64 i arm64 jako obsługiwane architektury hosta. Tag z wersjonowaniem jest łatwiejszy do odtworzenia podczas rozwiązywania problemów. Tagi i manifesty mogą ulec zmianie, dlatego sprawdź dokładną wersję, którą planujesz wdrożyć, zamiast zakładać, że każdy tag historyczny ma te same architektury.

Tabela tagów rejestru kontenerów zawierająca wersję 26.04.4.2.1 z wierszami platform linux/amd64, linux/arm64 i linux/ppc64le.
Wymieniona wersja ma natywną odmianę ARM64 obok amd64 i ppc64le; sprawdź rejestr na żywo, aby znaleźć używaną przez siebie etykietę.

Docker automatycznie wybiera pasujący wariant, gdy tag jest wieloplatformowy i żadne nadpisanie nie zmienia celu. Polecenie inspekcji obrazu Dockera wyświetla platformy opublikowane dla obrazu rejestru.

3. Usuń nadpisanie AMD64 i pobierz natywną odmianę

Sprawdź rozwiązaną usługę Compose, w tym pliki nadrzędne, pod kątem wymuszonego platform: linux/amd64. Zmienna Docker CLI DOCKER_DEFAULT_PLATFORMmoże również ustawić domyślną platformę dla poleceń akceptujących flagę platformy. platformPole Compose jawnie wybiera docelowy system operacyjny i architekturę, więc usuń nieprawidłowe nadpisanie lub ustaw je na ARM64. Jeśli masz jq, sprawdź scalone ustawienia bez wyświetlania niepowiązanych wartości środowiskowych: docker compose config --format json | jq '.services.collabora | {image, platform}'. To pole jest zdefiniowane w dokumentacji usługi ComposeDOCKER_DEFAULT_PLATFORM . Jest to udokumentowane w dokumentacji Docker CLI .

Fragment YAML Docker Compose z obrazem Collabora CODE 26.04.4.2.1 i platformą linux/arm64.
Użyj tego fragmentu Compose, aby wybrać zweryfikowaną wersję, a w razie potrzeby jawnie wskazać jako docelową linux/arm64.
services:
  collabora:
    image: collabora/code:26.04.4.2.1
    platform: linux/arm64

Oto fragment: scal wiersze obrazu i platformy z istniejącą usługą i zachowaj wymagane ustawienia. Jeśli Docker poprawnie wybiera natywny manifest ARM64, wiersz platformjest opcjonalny. Zastąp go collaboraw poniższych poleceniach, jeśli usługa Compose ma inną nazwę.

docker compose pull collabora
docker compose up -d --force-recreate collabora

Użyj przypiętego tagu, jak pokazano, lub innego wydania, którego manifest właśnie zweryfikowałeś. latest-arm64Tag jest również wymieniony w Docker Hub, ale jego zawartość zmienia się wraz ze zmianami w wydaniach. Przypięcie wersji sprawia, że ​​wycofanie i późniejsze porównanie są bardziej przewidywalne. Unikaj wymuszania linux/amd64niedostatecznej emulacji jako pierwszej poprawki, gdy dostępny jest natywny obraz ARM64; emulacja powoduje dodatkowe obciążenie i sprawia, że ​​diagnostyka uruchamiania jest mniej bezpośrednia.

4. Zdiagnozuj awarie niezwiązane z architekturą, a następnie sprawdź uruchomienie

Jeśli obraz natywny nadal istnieje, zamiast rozszerzać uprawnienia kontenera, skorzystaj z dziennika i stanu:

Terminal pokazujący polecenia Docker Compose służące do wyświetlania stanu kontenera i odczytywania dzienników usługi Collabora.
Po ponownym utworzeniu usługi użyj tych poleceń, aby sprawdzić, czy Compose utrzymuje kontener w działaniu, oraz aby odczytać jego komunikaty startowe.
SygnałNastępna czynność
no matching manifestSprawdź dokładny tag i wybraną platformę; wybierz tag, który zawiera linux/arm64.
exec format errorUsuń nadpisanie AMD64, ściągnij ponownie i sprawdź lokalną architekturę obrazu.
permission deniedlub plik konfiguracyjny jest nieczytelnySprawdź pliki i katalogi montowane metodą bind, ich właściciela i tryb oraz oczekiwany dostęp do kontenera. Napraw konkretne montowanie zamiast używać komendy chmod -R 777lub privileged: true.
OOMKilled=true, często z kodem wyjścia 137Sprawdź obciążenie pamięci hosta i limity pamięci kontenera; sam kod wyjścia 137 nie dowodzi wyeliminowania problemu OOM.

Użyj nazwy kontenera lub identyfikatora wyświetlonego przez , docker compose ps -aaby sprawdzić jego stan wyjścia:

docker inspect --format 'status={{.State.Status}} exit={{.State.ExitCode}} oom={{.State.OOMKilled}} error={{.State.Error}}' CONTAINER

Docker dokumentuje inspekcje kontenerów i logi kontenerów dla tych sprawdzeń. Nie usuwaj trwałych woluminów ani nie nadawaj całemu kontenerowi uprawnień tylko po to, aby przetestować problem z architekturą.

Sprawdź pobrany obraz i działającą usługę

Sprawdź, czy obraz lokalny zgłasza architekturę docelową:

docker image inspect collabora/code:26.04.4.2.1 --format '{{.Os}}/{{.Architecture}}'

Wartość oczekiwana to linux/arm64. Następnie sprawdź docker compose ps -astabilność działania i przejrzyj najnowsze logi pod kątem krytycznych błędów uruchamiania. Po połączeniu kontenera z platformą pamięci masowej lub odwrotnym serwerem proxy, wyślij żądanie /hosting/discoveryza pośrednictwem skonfigurowanego adresu URL Collabora i otwórz dokument testowy. Przed aktualizacjami sprawdź ponownie listę tagów rejestru, ponieważ dostępne wersje i manifesty platformy mogą ulec zmianie.

Zostaw komentarz

Skonfiguruj Nextcloud LDAP i logowanie do Active Directory

Połącz Nextcloud z LDAP lub Active Directory, ogranicz dostęp za pomocą filtrów użytkowników i grup oraz zweryfikuj bezpieczne uwierzytelnianie przed wdrożeniem.

Wymagaj uwierzytelniania dwuskładnikowego dla użytkowników Nextcloud

Włącz obsługiwanego dostawcę 2FA, przygotuj odzyskiwanie konta, a następnie wymagaj uwierzytelniania dwuskładnikowego dla wszystkich lub wybranych grup Nextcloud.

Chroń dokumenty Collabora CODE w stanie spoczynku dzięki szyfrowaniu pamięci masowej

Zabezpiecz pliki edytowane w Collabora CODE poprzez szyfrowanie warstwy pamięci masowej, ochronę danych tymczasowych oraz weryfikację szyfrowania i odzyskiwania.

Uruchomienie kodu Collabora na architekturze ARM64 z poprawnym obrazem

Uruchomienie kodu Collabora na architekturze ARM64 z poprawnym obrazem

Sprawdź architekturę hosta, upewnij się, że znacznik CODE publikuje ARM64, usuń wymuszone ustawienia AMD64 i oddziel błędy obrazu od problemów z uprawnieniami lub pamięcią.

Połącz Collabora Online z ownCloud Infinite Scale

Skonfiguruj połączenie WOPI między Collabora Online i ownCloud Infinite Scale, skonfiguruj odpowiednie adresy URL usług i sprawdź, czy zmiany w dokumencie zostały zapisane.

Blokowanie eksportu plików w Collabora CODE przez WOPI

Aby zapobiec eksportowaniu dokumentów w Collabora Online CODE, ustaw uprawnienie WOPI DisableExport, a następnie sprawdź, czy host i edytor je wymuszają.

Postaw Collabora na Nginx bez naruszania WebSockets

Postaw Collabora na Nginx bez naruszania WebSockets

Skonfiguruj zakończenie protokołu Nginx TLS, trasy Collabora i nagłówki WebSocket, a następnie przetestuj publiczne punkty końcowe przed otwarciem rzeczywistych dokumentów.

Zatrzymaj sesje edycji KODU, aby nie kończyły się po 10 minutach

Prześledź 10-minutowe rozłączenie CODE z serwerem proxy, modułem równoważenia obciążenia lub ścieżką WebSocket, a następnie popraw limit czasu i sprawdź, czy sesja pozostaje połączona.

Wdrażanie Collabora CODE na Kubernetes z Helm

Zainstaluj oficjalną tabelę Collabora Helm, skonfiguruj dostęp do WOPI i powinowactwo wejściowe, a następnie zweryfikuj wdrożenie bez typowych błędów konfiguracji.

Prześledź pusty dokument Collabora do warstwy, która nie działa

Prześledź pusty dokument Collabora do warstwy, która nie działa

Skorzystaj z żądań przeglądarki, dzienników WOPI i ukierunkowanych kontroli serwerów proxy, aby dowiedzieć się, dlaczego Collabora otwiera pusty dokument — i wybierz poprawkę, która pasuje do dowodów.