Как установить аддоны Minecraft Bedrock в Docker — гайд

Содержание13 разделов
Запуск Minecraft Bedrock сервера в Docker-контейнере обеспечивает изоляцию, простое обновление и минимальный overhead. Однако установка аддонов требует строгого соблюдения структуры и ручной активации через JSON.
Что используется вместо модов
В Bedrock Edition отсутствуют .jar-моды. Используются два типа паков:
- Behavior Pack — логика, AI, скрипты
- Resource Pack — текстуры, модели, UI
Форматы поставки:
.mcpack.mcaddon(оба пака)- распакованные директории
Docker stack для Bedrock сервера
Минимальный production-ready стек с поддержкой аддонов:
version: "3.8"
services:
mc-bedrock:
image: itzg/minecraft-bedrock-server:latest
container_name: mc-bedrock
restart: unless-stopped
ports:
- "19132:19132/udp"
environment:
EULA: "TRUE"
VERSION: "LATEST"
LEVEL_NAME: "MyWorld"
TEXTUREPACK_REQUIRED: "true"
CONTENT_LOG_CONSOLE_OUTPUT_ENABLED: "true"
MC_PACK: "/packs"
FORCE_PACK_COPY: "true"
volumes:
- /opt/minecraft/bedrock/data:/data
- /opt/minecraft/bedrock/packs:/packsСтруктура каталогов (критично)
Файловая структура должна строго соответствовать требованиям движка:
/opt/minecraft/bedrock/packs/Внутри:
/packs/
├── behavior_packs/
│ ├── addon_1/
│ └── addon_2/
└── resource_packs/
├── addon_1/
└── addon_2/Установка аддона
Рекомендуемый способ — распаковка
Извлечение содержимого:
unzip addon.mcaddon -d addonРаспределение:
mv addon/*/behavior_packs/* /opt/minecraft/bedrock/packs/behavior_packs/
mv addon/*/resource_packs/* /opt/minecraft/bedrock/packs/resource_packs/Если структура уже есть
mv behaviors behavior_packs
mv resources resource_packsАктивация аддонов через мир
Путь к миру:
/opt/minecraft/bedrock/data/worlds/MyWorld/world_behavior_packs.json
[
{
"pack_id": "UUID_1",
"version": [1, 0, 0]
}
]world_resource_packs.json
[
{
"pack_id": "UUID_1",
"version": [1, 0, 0]
}
]Где взять UUID
Открывается файл manifest.json внутри пака:
"header": {
"uuid": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"
}Перезапуск контейнера
После изменений требуется рестарт:
docker restart mc-bedrockПроверка загрузки
В логах контейнера должны появиться строки:
Pack Stack - [00]
Pack Stack - [01]Автоматическая загрузка паков игрокам
TEXTUREPACK_REQUIRED: "true"Клиент автоматически скачает ресурсы при подключении.
Ошибка: Unexpected version for the loaded data
Причина
- несовместимость версии формата блоков
- частичная поддержка API сервером
Поведение
- сервер запускается
- игроки подключаются
- часть функционала работает
Ограничения
- кастомные блоки могут не отобразиться
- декоративные элементы ломаются
Частые ошибки
Неверная структура
packs/addon/behaviors # ❌packs/behavior_packs/addon # ✅Отсутствуют world JSON
Без них аддоны не активируются.
Несовпадение UUID
Пак игнорируется без ошибок.
Контейнер не перезапущен
Изменения не применяются.
Best practices
- Хранить packs отдельно от data для изоляции
- Использовать Git для версионирования аддонов
- Минимизировать количество активных паков (снижение latency)
- Проверять совместимость версий Bedrock API
- Включать логирование через
CONTENT_LOG_CONSOLE_OUTPUT_ENABLED
Заключение
Установка аддонов в Minecraft Bedrock через Docker требует строгой структуры, ручной активации и контроля UUID, но обеспечивает стабильную и масштабируемую инфраструктуру для self-hosting сервера.