Об этом проекте

Этот репозиторий упаковывает выделенный сервер Insurgency: Sandstorm в Docker-образ для администраторов, желающих запускать серверы COOP или PVP с собственной конфигурацией. Образ пересобирается при изменении Steam-приложения или вышестоящего базового образа, поэтому содержимое контейнера не требует ручного обновления. Предлагаются два варианта образа: полный тег `latest` и уменьшенный тег `lite`, который хранит игровые данные по пути смонтированного диска. Серверы можно запускать через `docker run` или с помощью включённого `docker-compose.yml`. Поддерживается несколько экземпляров за счёт изменения PORT, QUERYPORT и HOSTNAME, а параметры запуска передаются через env-файл (`modmap.env`). Примеры конфигурационных файлов INI и TXT находятся в каталоге `config` и монтируются в контейнер только для чтения. Поддержка модов строится на mod.io. Начиная с обновления игры 1.20 сервер входит в mod.io с одноразовым кодом, отправляемым по электронной почте; старый подход с AccessToken больше не используется. Контейнер обрабатывает вход: задайте MODIO_EMAIL, перечислите ID модов в Mods.txt и передайте код через `docker exec <container> modio code <CODE>` (или MODIO_SECURITY_CODE). Вспомогательные подкоманды включают `modio login`, `modio status`, `modio sync --dry-run` и `modio reset`. Каждому серверу нужны собственная учётная запись mod.io и том. Профиль `seccomp-modio.json` необходимо скачать на хост и передать с `--security-opt`, поскольку Docker 25+ блокирует системные вызовы `io_uring`, используемые SDK mod.io в игре; профиль представляет собой стандартный профиль Docker плюс правила для `io_uring_setup`, `io_uring_enter` и `io_uring_register`. Дополнительные флаги запуска включают `-NoEAC` для отключения Easy Anti-Cheat и `-nominidumps` для отключения загрузки аварийных дампов. Каталог AutoUpdater содержит скрипты и unit systemd, которые сравнивают версии игры и мода ISMC и перезапускают сервер при появлении обновлений; rcon-cli указан как обязательное требование. Раздел советов описывает использование KSM (`-useksm -ksmmergeall` плюс `/sys/kernel/mm/ksm/run`) для совместного использования памяти между несколькими серверами UE4 на одном хосте, с инструкциями по чтению статистики KSM. Заметки по устранению неполадок охватывают отсутствующие файлы seccomp, ошибки прав доступа, истёкшие коды и проблемы со скачиванием модов.