Skip to content

Nextbox 1.12 — Docker all-in-one ​

Образ nextbox-docker.ptnl.moscow/nextbox/nextbox-all-in-one:1.12.0 содержит монолит Nextbox Core, frontend, PostgreSQL 17, Redis, RabbitMQ и Caddy. Core запускается вместе с обработчиком файлов в режиме core-with-worker. Document Server и другие внешние расширения устанавливаются отдельно.

Системные требования ​

  • Docker с поддержкой Linux-контейнеров.
  • Архитектура amd64 (x86_64). Образ all-in-one 1.12 выпускается только для x64.
  • Достаточно места для образа, базы данных и пользовательских файлов.

Установка ​

Создайте сеть, если её ещё нет. В этой сети можно разместить Document Server и другие внешние сервисы:

bash
docker network create nextbox

Запустите контейнер:

bash
docker run -d --name nextbox --restart unless-stopped \
  --platform linux/amd64 --network nextbox \
  -p 8095:80 \
  -v nextbox_data:/var/nextbox \
  -e POTENTIAL_CORE_SERVICE_FRONT_URL=http://localhost:8095 \
  nextbox-docker.ptnl.moscow/nextbox/nextbox-all-in-one:1.12.0

Для доступа с других компьютеров замените http://localhost:8095 на внешний адрес Nextbox. Веб-интерфейс доступен по этому адресу.

Внешний HTTP-порт контейнера — 80, в примере он опубликован на порту 8095. Caddy обслуживает frontend и направляет /api и /l на Core внутри контейнера по адресу 127.0.0.1:6005. Отдельный nginx для этого образа не требуется.

Данные и конфигурация ​

Том nextbox_data подключён к /var/nextbox: в нём находятся конфигурация, PostgreSQL и данные Nextbox. Сохраняйте этот том при замене контейнера.

При первой установке создаётся /var/nextbox/config/core.yml с уникальными JWT key, service token, AES-ключом Connections и signing key OnlyOffice. При повторном запуске существующий core.yml сохраняется без изменений. Настройки также можно задавать через переменные POTENTIAL_*.

Стандартные пользователь, пароль и база локального PostgreSQL — nextbox. При изменении POSTGRES_PASSWORD укажите соответствующий POTENTIAL_CORE_DATABASE_ADMIN_DSN. Для уже существующей базы смена переменной POSTGRES_PASSWORD сама по себе не меняет пароль роли PostgreSQL.

Document Server ​

Установите Document Server отдельно. При запуске контейнера Nextbox добавьте:

bash
-e POTENTIAL_ONLYOFFICE_DISCOVERY_ONLYOFFICE_SERVER_URL=http://documentserver \
-e POTENTIAL_ONLYOFFICE_DISCOVERY_GATEWAY_URL=http://<адрес_сервера>:8095

documentserver должен разрешаться из контейнера Nextbox; для обращения по имени контейнера подключите оба сервиса к одной Docker-сети. Адрес gateway должен быть доступен из Document Server.

Signing key Document Server должен совпадать с onlyoffice.tokens.server_key в core.yml. При новой установке префикс документов — local; при обновлении сохраняются прежние ключ и префикс. Caddy проксирует /onlyoffice/ на заданный Document Server.

Проверка запуска ​

bash
docker inspect --format '{{.State.Health.Status}}' nextbox
docker exec nextbox wget -q -O- http://127.0.0.1:6005/readyz
docker exec nextbox wget -q -O- http://127.0.0.1:6005/statusz
docker logs nextbox

Готовый контейнер имеет статус healthy. При первом старте Core выполняет миграции базы данных, поэтому готовность может наступить не сразу.

Обновление ​

Переход со старого all-in-one 1.11 и последующие обновления 1.12 описаны в инструкции обновления.