OpenClaw на Docker VPS
Фиксация образов, смок до трафика и откат в 2026

Неизменяемые теги · Дисциплина Compose · Смок до трафика · Откат для Gateway

OpenClaw Docker продакшен-пиннинг образов и откат 2026

Соло-админы и небольшие команды на VPS часто видят неожиданные апгрейды, потому что :latest ночью подтянул новую Gateway. Статья объясняет, почему плавающие теги ломают воспроизводимость, как зафиксировать semver или digest в Compose и Kubernetes, что сохранить перед сменой образа, как прогнать двойной инстанс-смок в тихое окно и как выглядит откат в shell: вернуть предыдущий тег и перепроверить health и каналы. Перекрёстное чтение: устойчивые обновления, установка VPS Docker, Exit 137 и окно WASM, разбор Gateway doctor.

01

Почему :latest подрывает production OpenClaw

Плавающие теги скрывают три вида дрейфа: бинарный интерфейс Gateway, от которого зависят Skills, схему плагинов или каналов для колбэков и базовые библиотеки контейнера вокруг Node. Тянуть «всегда новейшее» превращает инциденты в угадайку: два хоста редко получают одинаковые слои в разное время. Страдают постмортемы и доверие коллег с IM или webhook.

СлойЧто меняется под :latestПервый симптом
API GatewayФлаги CLI, схема конфигурации, маршруты Control UISkills падают на валидации после незапланированного рестарта
КаналыТайминг webhook-handshake, дефолты Discord intentsТихая потеря сообщений, пока кто-то не увидит очередь
Стек runtimeПатч-уровень Node, совместимость libcПервый запуск WASM или нативных deps даёт всплеск CPU или OOM

Production OpenClaw — это образы, которые можно назвать дважды: один раз в Git и один раз на хосте — digest опционален, но сознательно выбран.

Заметка: кластерные переключения без простоя — в DR и апгрейдах без простоя; эта страница про одну или две стопки Compose на VPS.

02

Стратегия фиксации: Compose, Kubernetes и дисциплина журнала изменений

На среду выберите одну неизменяемую ссылку: либо протестированный релиз-тег (v2026.4.2), либо digest, если нужна побайтовая идентичность между регионами. Храните эту строку рядом с compose и дублируйте в инцидент-тикетах.

yaml
services:
  openclaw:
    image: ghcr.io/openclaw/openclaw:v2026.4.2
    pull_policy: missing
  • Compose: избегайте неявных pull latest; ставьте pull_policy: missing или фиксируйте digest, если автоматизация не должна менять работающие контейнеры.
  • Kubernetes: образ контейнера на тот же тег или digest; осмысленные аннотации выката, чтобы история kubectl совпадала с утверждениями.
  • Учёт: одна строка CHANGELOG на bump: тег, причина, тестер, ссылка на заметки смока.

Внимание: править только openclaw.json, пока образ тихо уходит вперёд, всё равно неконтролируемый апгрейд — фиксируйте ревизию конфига и ссылку на образ в одном change-тикете.

03

Чеклист перед апгрейдом: пути, workspace, каналы и смок Skills

Перед любым docker compose pull зафиксируйте охват, чтобы откат знал, что значило «хорошо».

  1. 01

    Том конфигурации: снимок ~/.openclaw или смонтированного пути; контрольная сумма списка файлов, если поддерживает бэкап.

  2. 02

    Workspace: каталоги Skills и секреты вне тома, которые compose подключает через env_file.

  3. 03

    Каналы: экспорт URL webhook и проверка, что окна доступности совпадают с сообщениями о работах.

  4. 04

    Список смока: два Skills и пара отправка-приём по каналу до прод-трафика.

  5. 05

    Ресурсы: запас памяти под первый компиляционный пик — см. статью Exit 137.

04

Blue-green или двойной инстанс: окно низкой нагрузки и сигналы в логах

Кандидатный образ запускайте как второе имя проекта или альтернативный compose на непродакшен-портах. Трафик переключайте только после успешного смока.

СигналГде смотретьКритерий успеха
Health Gatewaycurl loopback healthHTTP 200 стабильно на нескольких пробах
Статус каналовЛоги Gateway или статус CLIНет шторма переподключений; колбэки подтверждены
Аудит SkillsВывод runner SkillsНет новых deny-правил относительно ожиданий staging
Control UIБраузер к закреплённому originПосле правил прокси нет mismatch не-loopback

Держите окно промо коротким; долгие пересечения усиливают дрейф баз или очередей, к которым подключается Gateway.

05

Runbook отката: вернуть тег, пересоздать, проверить

Откат — отрепетированный сценарий, не импровизация. Замените ссылку на образ на последний проверенный тег, явно сделайте pull, пересоздайте контейнеры, затем докажите health до объявления восстановления.

bash
export OPENCLAW_IMAGE_TAG="v2026.4.1"
docker compose pull openclaw
docker compose up -d --force-recreate openclaw
curl -sf http://127.0.0.1:18789/health
  • Повтор каналов: после отката — пробное сообщение по каждому коннектору; сравните ID с логами до инцидента.
  • Запись инцидента: предыдущий тег, попытка тега, окно времени, понадобилось ли восстановление из бэкапа.

Если рядом с VPS-стеком идут нагрузки, зависящие от macOS, разделяйте доступность Gateway и пулы компиляции, чтобы споры об откате оставались в рамках. Для выделенной удалённой Mac-мощности с более ясными границами, чем домашнее железо, см. цены аренды Mac Mini и оформление заказа вместе с этой дисциплиной Gateway.

FAQ

FAQ

Материал об устойчивых обновлениях охватывает каналы, ритм обновлений и бэкапы между средами. Эта статья уже про фиксацию образов Docker, staging-смок и команды отката для VPS.

Для большинства команд — проверенные semver-теги; к digest переходите при требованиях регулятора или побайтовой паритетности между регионами. В любом случае запись рядом с compose в Git.

Первый запуск и размеры — в установке OpenClaw v2026.4 VPS Docker; пики памяти при апгрейдах пересекаются с Exit 137 и окном WASM.