251006_docker
Отлично, рад что сдвинулось! Теперь разберём две вещи: почему контейнер сразу упал и справку по Docker.
Почему контейнер не запущен
Скорее всего, zeptoclaw gateway без настроенного провайдера падает сразу при старте — в логах должна быть ошибка. Вы не успели посмотреть логи.
Проверьте:
docker logs zeptoclaw-agent-a
Типичные причины:
Нет
config.jsonс API-ключом — gateway не может стартовать без провайдера.Нет переменных окружения (Telegram-токен и т.п.) — для gateway нужен хотя бы один канал.
Порт занят — если gateway пытается слушать порт.
Правильный порядок действий для ZeptoClaw:
Сначала — onboard (интерактивная настройка), потом — gateway. Но onboard требует работающего контейнера с shell. Поэтому проще так:
Вариант 1. Запустить с sleep infinity, настроить внутри, потом запустить gateway:
# Удалить упавший контейнер docker rm zeptoclaw-agent-a # Запустить с shell, который не завершится docker run -d --name zeptoclaw-agent-a \ -v ~/zeptoclaw-data:/root/.zeptoclaw \ ghcr.io/qhkm/zeptoclaw:latest \ sleep infinity # Войти внутрь docker exec -it zeptoclaw-agent-a sh # Внутри контейнера: zeptoclaw onboard # или вручную создать /root/.zeptoclaw/config.json exit # Теперь перезапустить с gateway docker stop zeptoclaw-agent-a docker rm zeptoclaw-agent-a docker run -d --name zeptoclaw-agent-a \ -v ~/zeptoclaw-data:/root/.zeptoclaw \ ghcr.io/qhkm/zeptoclaw:latest \ zeptoclaw gateway
Вариант 2. Проще для теста — CLI-режим вместо gateway:
docker rm zeptoclaw-agent-a docker run -it --rm \ -v ~/zeptoclaw-data:/root/.zeptoclaw \ ghcr.io/qhkm/zeptoclaw:latest \ zeptoclaw agent --template researcher -m "Hello"
Одноразовый запуск — контейнер стартует, выполняет задачу, выходит. Если нужен onboard — сначала прогоните zeptoclaw onboard в интерактивном режиме (-it), а потом уже agent.
Важно: zeptoclaw gateway --containerized внутри уже запущенного Docker-контейнера работать не будет (Docker-in-Docker без спецнастройки). Для тестов используйте вариант без --containerized.
Справка: 10 самых полезных команд Docker
# | Команда | Что делает |
1 |
| Показать все контейнеры (включая остановленные). Без |
2 |
| Смотреть логи контейнера в реальном времени ( |
3 |
| Войти внутрь работающего контейнера (shell). |
4 |
| Запустить контейнер в фоне ( |
5 |
| Остановить контейнер (SIGTERM, потом SIGKILL через 10 сек). |
6 |
| Запустить остановленный контейнер с теми же настройками. |
7 |
| Удалить остановленный контейнер (данные в volume остаются). |
8 |
| Список локальных образов. |
9 |
| Скачать/обновить образ. |
10 |
| Показать всё о контейнере в JSON: IP, mounts, env, состояние. |
Бонус — часто нужное:
docker rm -f <name>— удалить даже запущенный (force).docker system prune -a— почистить всё неиспользуемое (осторожно: удалит образы и volumes).docker cp <name>:/path ./local— скопировать файл из контейнера.
Порядок работы с ZeptoClaw:
docker logs zeptoclaw-agent-a # 1. Посмотреть, почему упал docker rm -f zeptoclaw-agent-a # 2. Убрать мусор docker run -it --rm -v ~/zeptoclaw-data:/root/.zeptoclaw \ ghcr.io/qhkm/zeptoclaw:latest zeptoclaw onboard # 3. Настроить docker run -d --name zeptoclaw-agent-a \ -v ~/zeptoclaw-data:/root/.zeptoclaw \ ghcr.io/qhkm/zeptoclaw:latest zeptoclaw gateway # 4. Запустить gateway
Проверка яндекс токенов из командной строки
YANDEX_FOLDER_ID=b1g6p77ueu8g3vkat3at YANDEX_KEY_ID=aje095c5eiohjlmhitll YANDEX_API_KEY=AQVNwElYV0sRnW0ZdrVAK60LHOTpUHwO5Qq4tJIz
a@amd7:~$ curl -s http://localhost:8520/v1/chat/completions \ -H "Authorization: Bearer sk-y2o-4637ec8a-4e99-4706-90a0-6d8e6f33e7cc" \ -H "Content-Type: application/json" \ -d '{ "model": "yandexgpt/latest", "messages": [{"role": "user", "content": "Привет!"}] }' | jq . { "id": "y2o-a9b7ba70783b617e9998dc4dd82eb3c51791295138", "model": "yandexgpt/latest-09-02-2025", "object": "chat.completion", "created": 1791295138, "choices": [ { "index": 0, "message": { "role": "assistant", "content": "Здравствуйте! Чем я могу вам помочь?" }, "logprobs": null, "finish_reason": "stop" } ], "usage": { "prompt_tokens": 12, "completion_tokens": 8, "total_tokens": 20 }, "system_fingerprint": "fp_a9b7ba70783b617e9998dc4dd82eb3c5" }