OpenClaw 企业定制 私人订制工作流 优化运维 openclaw记忆优化 问题咨询解决 请加微信交流
微信: aixbwz
Docker是部署Hermes最干净的方式,不需要本地Python环境,一行命令跑起来。这篇讲清楚Docker部署的两种方式、配置方法、以及常见问题解决。
为什么用Docker部署
- 不需要安装Python等依赖
- 环境隔离,不污染系统
- 部署简单,一行命令
- 迁移方便,导出镜像即可
- 适合生产环境
方式一:直接运行
docker run -it --rm -v ~/.hermes:/home/hermes/.hermes -e OPENROUTER_API_KEY=sk-or-v1-xxx nousresearch/hermes-agent:latest
参数说明
- -it:交互模式
- –rm:退出后删除容器
- -v:挂载配置目录
- -e:设置环境变量
方式二:docker-compose
创建docker-compose.yml
version: '3.8'
services:
hermes:
image: nousresearch/hermes-agent:latest
container_name: hermes
restart: unless-stopped
ports:
- "3000:3000"
environment:
- OPENROUTER_API_KEY=${OPENROUTER_API_KEY}
- TELEGRAM_BOT_TOKEN=${TELEGRAM_BOT_TOKEN}
volumes:
- ~/.hermes:/home/hermes/.hermes
stdin_open: true
tty: true
启动
docker-compose up -d
查看日志
docker-compose logs -f
停止
docker-compose down
持久化配置
目录结构
~/.hermes/
config.yaml # 配置文件
memory/ # 记忆数据
skills/ # 技能
logs/ # 日志
完整挂载
docker run -it --rm -v ~/.hermes:/home/hermes/.hermes -v ~/.ssh:/home/hermes/.ssh:ro -v /path/to/workspace:/workspace nousresearch/hermes-agent:latest
网络配置
开启网络访问
docker run -it --rm --network host nousresearch/hermes-agent:latest
HTTP代理
docker run -it --rm -e HTTP_PROXY=http://proxy:8080 -e HTTPS_PROXY=http://proxy:8080 nousresearch/hermes-agent:latest
资源限制
docker run -it --rm --memory="2g" --cpus="2" nousresearch/hermes-agent:latest
构建自定义镜像
cat > Dockerfile << 'EOF'
FROM nousresearch/hermes-agent:latest
# 安装额外依赖
RUN pip install some-package
# 复制配置
COPY config.yaml /home/hermes/.hermes/config.yaml
# 设置工作目录
WORKDIR /workspace
EOF
docker build -t my-hermes .
docker run -it --rm my-hermes
Gateway模式
Docker里运行Gateway同时服务多个平台:
docker run -it --rm -p 3000:3000 -v ~/.hermes:/home/hermes/.hermes -e TELEGRAM_BOT_TOKEN=xxx -e DISCORD_BOT_TOKEN=yyy nousresearch/hermes-agent:latest gateway
数据备份
备份配置
tar -czvf hermes-backup.tar.gz ~/.hermes/
恢复配置
tar -xzvf hermes-backup.tar.gz -C ~/
docker restart hermes
多环境配置
# .env.dev
OPENROUTER_API_KEY=sk-or-v1-dev-xxx
NODE_ENV=development
# .env.prod
OPENROUTER_API_KEY=sk-or-v1-prod-xxx
NODE_ENV=production
docker run -it --rm --env-file .env.prod nousresearch/hermes-agent:latest
常见问题
容器内无法访问网络?
检查是否开启了--network host,或者配置了DNS。
配置文件不生效?
确保挂载路径正确:-v ~/.hermes:/home/hermes/.hermes
权限问题?
容器内用户是hermes,确保~/.hermes目录权限755。
数据丢失?
没有挂载volume会导致数据丢失。务必挂载~/.hermes目录。
总结
Docker是最干净的部署方式:
- 一行命令跑起来
- 不需要Python环境
- 环境隔离不污染系统
- 迁移备份方便
建议用docker-compose管理。
相关文章
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END








暂无评论内容