Docker-контейнер для запуска Clawdbot (Moltbot) - мощного AI-ассистента для терминала.
Этот проект предоставляет готовую Docker-конфигурацию для запуска Clawdbot в контейнере. Контейнер основан на node:22-alpine и включает все необходимые зависимости для работы бота.
- Легковесный образ на основе Alpine Linux
- Автоматическая установка Clawdbot через официальный install.sh
- Поддержка персистентности данных через Docker volumes
- Настройка через переменные окружения
- Безопасный запуск от непривилегированного пользователя
- Health checks для мониторинга состояния
- Готовый docker-compose.yml для быстрого старта
- Docker 20.10+
- Docker Compose 2.0+ (опционально)
- 512MB RAM минимум (рекомендуется 2GB)
- Клонируйте репозиторий:
git clone https://github.com/libertag/clawd_bot.git
cd clawd_bot- Создайте файл
.envиз примера:
cp .env.example .env-
Отредактируйте
.envи добавьте необходимые переменные окружения (API ключи и т.д.) -
Запустите контейнер:
docker-compose up -d- Проверьте логи:
docker-compose logs -f clawdbot- Соберите образ:
docker build -t clawdbot:latest .- Запустите контейнер:
docker run -d \
--name clawdbot \
--restart unless-stopped \
-v clawdbot_data:/home/clawdbot/clawd \
-v clawdbot_config:/home/clawdbot/.clawdbot \
--env-file .env \
clawdbot:latest- Проверьте статус:
docker logs clawdbotОсновные переменные окружения настраиваются в файле .env:
# Профиль Clawdbot
CLAWDBOT_PROFILE=default
# Окружение Node.js
NODE_ENV=production
# API ключи (если требуются)
ANTHROPIC_API_KEY=your_api_key_here
OPENAI_API_KEY=your_openai_key_here
# Дополнительные настройки
LOG_LEVEL=infoПолный список доступных переменных смотрите в файле .env.example.
Контейнер использует два volume для сохранения данных:
clawdbot_data- рабочая директория бота (/home/clawdbot/clawd)clawdbot_config- конфигурационные файлы (/home/clawdbot/.clawdbot)
По умолчанию контейнер не открывает никаких портов. Если ваш бот требует сетевого доступа, раскомментируйте секцию ports в docker-compose.yml:
ports:
- "8080:8080"# Запустить контейнер
docker-compose up -d
# Остановить контейнер
docker-compose down
# Перезапустить контейнер
docker-compose restart
# Просмотр логов
docker-compose logs -f
# Проверка статуса
docker-compose ps
# Обновление образа
docker-compose pull
docker-compose up -d --build# Запустить контейнер
docker start clawdbot
# Остановить контейнер
docker stop clawdbot
# Перезапустить контейнер
docker restart clawdbot
# Просмотр логов
docker logs -f clawdbot
# Выполнить команду внутри контейнера
docker exec -it clawdbot /bin/bash
# Проверить версию Clawdbot
docker exec clawdbot clawdbot --versionЧтобы обновить Clawdbot до последней версии:
# Остановите контейнер
docker-compose down
# Пересоберите образ
docker-compose build --no-cache
# Запустите контейнер
docker-compose up -d# Получите последние изменения из репозитория
git pull
# Пересоберите образ
docker-compose up -d --buildПроверьте логи:
docker-compose logs clawdbotКонтейнер запускается от пользователя clawdbot (UID 1000). Если у вас проблемы с volumes, проверьте права:
docker-compose down
docker volume rm clawd_bot_clawdbot_data clawd_bot_clawdbot_config
docker-compose up -ddocker inspect --format='{{.State.Health.Status}}' clawdbotdocker exec -it clawdbot /bin/sh# Сборка образа
docker build -t clawdbot:dev .
# Запуск с локальными изменениями
docker run -it --rm \
-v $(pwd):/app \
clawdbot:dev /bin/shДля отладки можно запустить контейнер в интерактивном режиме:
docker run -it --rm \
--env-file .env \
clawdbot:latest /bin/sh.
├── Dockerfile # Определение Docker образа
├── docker-compose.yml # Конфигурация Docker Compose
├── install.sh # Скрипт установки Clawdbot
├── .env.example # Пример переменных окружения
├── .gitignore # Игнорируемые файлы Git
├── .dockerignore # Игнорируемые файлы Docker
└── README.md # Документация
- Контейнер работает от root для избежания проблем с правами доступа к файлам clawdbot
- Используется минимальный базовый образ Alpine Linux
- Все секреты передаются через переменные окружения
- Файл
.envдобавлен в.gitignoreдля предотвращения утечки секретов - Для production окружения рекомендуется настроить запуск от непривилегированного пользователя
Этот проект распространяется под лицензией MIT. Clawdbot имеет свою собственную лицензию.
Если у вас возникли вопросы или проблемы:
- Проверьте раздел Troubleshooting
- Откройте Issue в GitHub репозитории
- Обратитесь к официальной документации Clawdbot
- Первый релиз
- Базовая Docker конфигурация
- Docker Compose поддержка
- Документация