Запустите Collabora CODE на ARM64 с правильным образом.

Контейнер Collabora CODE, который немедленно завершает работу на хосте ARM64, часто использует неправильную платформу образа, но сама по себе платформа ARM64 не является неподдерживаемой. Прежде чем изменять разрешения или пересобирать образ, начните с проверки разрядности хоста, точного опубликованного манифеста тега образа и любых переопределений платформы Compose. По состоянию на 10 октября 2026 года официальный образ CODE включает сборки для ARM64; Docker Hub указывает тег 26.04.4.2.1для linux/arm64.

Терминал с командами для проверки архитектуры ядра хоста и архитектуры движка Docker.
Начните с команд, определяющих архитектуру хоста и Docker; сравните их результаты с платформой образа, которую вы планируете использовать.

1. Определите архитектуру хоста и точную ошибку запуска.

Выполните эти команды на хосте Docker, а не внутри остановленного контейнера Collabora. Замените, collaboraесли ваша служба Compose использует другое имя:

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

64-битная ARM Linux-платформа обычно использует значение aarch64` uname -m.`. Значение, например, `.`, armv7lобычно указывает на 32-битную платформу ядра ARM, которая отличается от linux/arm64`.`. В метке архитектуры Docker может использоваться другое написание, поэтому сравнивайте тип хоста, конфигурацию Compose и манифест образа, а не сопоставляйте одну строку механически.

Прочитайте первое сообщение о критической ошибке и состояние завершения. «No matching manifest for linux/arm64» означает, что для выбранного тега нет соответствующего варианта для запрошенной платформы. «Exec format error» указывает на несоответствие архитектуры или явно заданную чужую платформу. Ошибка доступа или завершение процесса из-за нехватки памяти имеют другую причину; не следует рассматривать каждый цикл перезапуска как сбой совместимости с ARM.

2. Убедитесь, что тег публикует образ ARM64.

Перед изменением хоста проверьте метку в реестре:

docker buildx imagetools inspect collabora/code:26.04.4.2.1

Найдите это linux/arm64в списке платформ. 10 октября 2026 года в официальном списке тегов Docker Hub была указана платформа как для , так latestи для . На странице CODE26.04.4.2.1 Collabora указаны поддерживаемые архитектуры хоста: x86-64, ppc64 и arm64. Версионированный тег проще использовать для устранения неполадок. Теги и манифесты могут меняться, поэтому проверяйте именно ту версию, которую планируете развернуть, вместо того, чтобы предполагать, что все исторические теги имеют одинаковые архитектуры.

Таблица тегов реестра контейнеров, содержащая версию 26.04.4.2.1 с указанием платформ linux/amd64, linux/arm64 и linux/ppc64le.
Указанный тег релиза включает в себя нативный вариант для ARM64, а также amd64 и ppc64le; проверьте текущий реестр, чтобы узнать, какой тег вам нужен.

Docker автоматически выбирает соответствующий вариант, если тег является многоплатформенным и никакие изменения не заменяют целевую платформу. Команда проверки образов Docker отображает платформы, опубликованные для образа реестра.

3. Удалите опцию переопределения AMD64 и загрузите нативный вариант.

Проверьте разрешенную службу Compose, включая файлы переопределения, на предмет принудительного изменения platform: linux/amd64. Переменная Docker CLI DOCKER_DEFAULT_PLATFORMтакже может устанавливать платформу по умолчанию для команд, принимающих флаг платформы. platformПоле Compose явно выбирает целевую операционную систему и архитектуру, поэтому удалите некорректное переопределение или установите его на ARM64. Если у вас есть jq, проверьте объединенные настройки, не выводя несвязанные значения среды: docker compose config --format json | jq '.services.collabora | {image, platform}'. Это поле определено в справочнике службы Compose . DOCKER_DEFAULT_PLATFORMописано в справочнике Docker CLI .

Фрагмент YAML-файла Docker Compose с образом Collabora CODE 26.04.4.2.1 и платформой linux/arm64.
Используйте этот фрагмент Compose для выбора проверенной версии и, при необходимости, для явного указания целевой платформы linux/arm64.
services:
  collabora:
    image: collabora/code:26.04.4.2.1
    platform: linux/arm64

Это фрагмент кода: объедините строки, относящиеся к образу и платформе, с существующим сервисом, сохранив при этом необходимые настройки. Если Docker уже корректно выбирает собственный манифест ARM64, эта platformстрока необязательна. Замените её collaboraв командах ниже, если ваш сервис Compose имеет другое имя.

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

Используйте закрепленный тег, как показано, или другой релиз, манифест которого вы только что проверили. latest-arm64Тег также указан в Docker Hub, но его содержимое меняется по мере изменения релизов. Закрепление версии делает откат и последующее сравнение более предсказуемыми. Избегайте принудительного linux/amd64использования эмуляции в качестве первого исправления, если доступен нативный образ ARM64; эмуляция добавляет накладные расходы и делает диагностику при запуске менее прямой.

4. Проведите диагностику неархитектурных сбоев, затем проверьте запуск.

Если исходный образ по-прежнему существует, используйте журнал и состояние вместо расширения привилегий контейнера:

Терминал, отображающий команды Docker Compose для вывода списка состояний контейнеров и чтения журналов службы Collabora.
После пересоздания службы используйте эти команды, чтобы проверить, продолжает ли Compose запускать контейнер, и прочитать его сообщения при запуске.
СигналСледующее действие
no matching manifestПроверьте точный тег и выбранную платформу; выберите тег, который содержит linux/arm64.
exec format errorУдалите параметр переопределения AMD64, выполните повторное обновление и проверьте архитектуру локального образа.
permission deniedили файл конфигурации нечитаемПроверьте файлы и каталоги, смонтированные с помощью bind-mount, их владельца и режим доступа, а также ожидаемый доступ контейнера. Исправьте конкретное место монтирования, а не используйте chmod -R 777или privileged: true.
OOMKilled=trueчасто с кодом выхода 137Проверьте нехватку памяти на хосте и любые ограничения памяти контейнера; код завершения 137 сам по себе не доказывает ошибку нехватки памяти (OOM kill).

Используйте имя или идентификатор контейнера, отображаемый параметром, docker compose ps -aчтобы проверить его состояние завершения:

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

Docker документирует результаты проверки контейнеров и ведет журналы этих проверок. Не удаляйте постоянные тома и не предоставляйте контейнеру привилегированные права доступа только для проверки архитектурных проблем.

Проверьте загруженный образ и запущенную службу.

Убедитесь, что локальный образ отображает целевую архитектуру:

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

Ожидаемое значение — linux/arm64. Затем проверьте docker compose ps -aстабильное рабочее состояние и просмотрите последние журналы на наличие фатальных ошибок при запуске. После подключения контейнера к вашей платформе хранения или обратному прокси-серверу отправьте запрос /hosting/discoveryчерез настроенный URL-адрес Collabora и откройте тестовый документ. Перед обновлением перепроверьте список тегов реестра, поскольку доступные версии и манифесты платформы могут измениться.

Оставить комментарий

Настройка входа в Nextcloud через LDAP и Active Directory.

Подключите Nextcloud к LDAP или Active Directory, ограничьте доступ с помощью фильтров по пользователям и группам и проверьте безопасную аутентификацию перед развертыванием.

Ввести обязательную двухфакторную аутентификацию для пользователей Nextcloud.

Включите поддерживаемого поставщика двухфакторной аутентификации, подготовьте средства восстановления учетной записи, а затем установите требование двухфакторной аутентификации для всех пользователей или выбранных групп Nextcloud.

Защитите документы Collabora CODE в состоянии покоя с помощью шифрования хранилища.

Защитите файлы, отредактированные в Collabora CODE, путем шифрования уровня хранения, защиты временных данных, а также проверки шифрования и возможности восстановления.

Запустите Collabora CODE на ARM64 с правильным образом.

Запустите Collabora CODE на ARM64 с правильным образом.

Проверьте архитектуру вашего хоста, убедитесь, что тег CODE публикует ARM64, удалите принудительные настройки AMD64 и отделите ошибки образа от проблем с правами доступа или памятью.

Подключите Collabora Online к ownCloud Infinite Scale

Настройте WOPI-соединение между Collabora Online и ownCloud Infinite Scale, укажите правильные URL-адреса сервисов и убедитесь, что изменения в документе сохраняются.

Экспорт блочных файлов в Collabora CODE через WOPI

Чтобы предотвратить экспорт документов в Collabora Online CODE, установите разрешение WOPI DisableExport, а затем убедитесь, что хост и редактор применяют это разрешение.

Разместите Collabora за Nginx, не нарушая работу WebSockets.

Разместите Collabora за Nginx, не нарушая работу WebSockets.

Настройте завершение TLS-соединения Nginx, маршруты Collabora и заголовки WebSocket, а затем протестируйте общедоступные конечные точки, прежде чем открывать реальные документы.

Предотвратите завершение сеансов редактирования кода через 10 минут.

Проследите причину разрыва соединения CODE с интервалом в 10 минут до прокси-сервера, балансировщика нагрузки или WebSocket-сервера, затем исправьте ошибку тайм-аута и убедитесь, что соединение остается активным.

Развертывание Collabora CODE в Kubernetes с помощью Helm

Установите официальный Helm-диаграмму Collabora, настройте доступ к WOPI и привязку входящего трафика, а также проверьте развертывание на наличие распространенных ошибок настройки.

Как отследить пустой документ Collabora до слоя, вызвавшего ошибку.

Как отследить пустой документ Collabora до слоя, вызвавшего ошибку.

Используйте запросы браузера, журналы WOPI и целевые проверки прокси-серверов, чтобы выяснить, почему Collabora открывает пустой документ, и выберите решение, соответствующее полученным данным.