Hermes Agent Docker部署完整指南:在容器里运行AI助手(2026最新)

维护咨询 大模型部署 问题解决 技能定制 大模型训练

站长交流微信: aixbwz

想在服务器上长期运行Hermes Agent,又不想污染系统环境?Docker是最好的选择。

把Hermes装进容器里,数据持久化、升级不影响、随时可以迁移到其他机器。本文讲清楚怎么用Docker跑Hermes,包括数据持久化、GPU支持、和其他容器的联动。

## 为什么用Docker跑Hermes

环境隔离。 Hermes依赖Python和各种包,跟系统其他服务不混在一起。升级或卸载不会影响系统。

迁移方便。 整套环境打包成镜像,迁移到新服务器只需要拉取镜像加启动,数据不走丢。

多实例。 想跑多个不同配置的Hermes实例?Docker compose一个文件搞定。

资源控制。 可以限制容器用的CPU、内存,防止Hermes占满服务器资源。

## 基础Docker部署

前置条件:

Docker安装(Linux上执行):

curl -fsSL https://get.docker.com | bash
systemctl enable docker
systemctl start docker

创建目录结构:

mkdir -p ~/hermes-docker
cd ~/hermes-docker
mkdir -p data/.hermes data/config

Dockerfile:

# ~/hermes-docker/Dockerfile
FROM python:3.11-slim

WORKDIR /app

# 安装系统依赖
RUN apt-get update && apt-get install -y \
    curl git bash \
    && rm -rf /var/lib/apt/lists/*

# 安装Hermes Agent
RUN curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash

# 创建数据目录
RUN mkdir -p /data/.hermes

# 复制配置(如有)
COPY config.yaml /data/config/

ENV HERMES_HOME=/data/.hermes

WORKDIR /data/.hermes

CMD ["hermes", "chat"]

构建并运行:

cd ~/hermes-docker
docker build -t hermes-agent .
docker run -it --rm \
    -v $(pwd)/data:/data \
    -e HERMES_HOME=/data/.hermes \
    hermes-agent

## 数据持久化配置

上面用`-v $(pwd)/data:/data`把容器内的/data映射到宿主机的目录。所有Hermes的数据(配置、记忆、会话)都会保存在宿主机上,容器删除重建不丢数据。

目录结构:

~/hermes-docker/
└── data/
    └── .hermes/
        ├── config.yaml      # 配置文件
        ├── .env             # API Key
        ├── SOUL.md          # 人格设定
        ├── memories/        # 记忆文件
        ├── sessions/        # 会话历史
        └── skills/          # 已安装的Skills
    └── config/
        └── config.yaml      # 额外配置

## Docker Compose管理多实例

想同时跑多个不同配置的Hermes实例,用Docker Compose:

# ~/hermes-docker/docker-compose.yml
version: '3.8'

services:
  hermes-main:
    build: .
    container_name: hermes-main
    volumes:
      - ./data/main:/data
    environment:
      - HERMES_HOME=/data/.hermes
    restart: unless-stopped
    # 前台运行,如果需要后台加 tty: true

  hermes-coder:
    build: .
    container_name: hermes-coder
    volumes:
      - ./data/coder:/data
    environment:
      - HERMES_HOME=/data/.hermes
    profiles:
      - coder
    restart: unless-stopped

networks:
  default:
    name: hermes-network
# 启动主实例
docker compose up -d hermes-main

# 启动coder实例(需要时)
docker compose --profile coder up -d hermes-coder

# 查看日志
docker compose logs -f hermes-main

# 停止
docker compose down

## GPU支持

如果用Hermes跑需要GPU的任务(如本地LLM推理),需要给容器加GPU支持:

# NVIDIA GPU
docker run --gpus all -it --rm \
    -v $(pwd)/data:/data \
    -e HERMES_HOME=/data/.hermes \
    --runtime=nvidia \
    hermes-agent

需要宿主机安装了NVIDIA驱动和nvidia-docker。

## Telegram Bot后台运行

想让Telegram Bot 24小时在线,用`–detach`后台运行:

docker run -d --restart unless-stopped \
    --name hermes-telegram \
    -v $(pwd)/data:/data \
    -e HERMES_HOME=/data/.hermes \
    hermes-agent \
    hermes gateway start

`–restart unless-stopped`保证服务器重启后Bot自动上线。

## 升级Hermes

升级容器里的Hermes:

# 方法一:重新构建镜像
cd ~/hermes-docker
docker build -t hermes-agent --no-cache .
docker compose restart hermes-main

# 方法二:进入容器更新
docker exec -it hermes-main bash
hermes update
exit
docker compose restart hermes-main

数据都在volumes里,升级不影响。

## 安全注意事项

保护API Key。

不要把.env文件提交到代码仓库。.env应该加到.gitignore:

# .gitignore
data/.hermes/.env
data/.hermes/config.yaml

限制容器权限。

用非root用户运行Hermes:

RUN useradd -m hermes && mkdir -p /data/.hermes && chown -R hermes:hermes /data
USER hermes

网络隔离。

如果服务器上有其他服务,用Docker网络隔离Hermes:

docker network create hermes-net
docker network connect hermes-net hermes-telegram

## 常见问题

Q:Docker里能访问宿主机的文件吗?

A:可以。用-v参数把宿主机目录映射到容器里。但容器默认不能访问未映射的路径。

Q:容器里的Hermes能调用宿主机的Docker吗?

A:可以,但需要挂载Docker socket:`-v /var/run/docker.sock:/var/run/docker.sock`。这有安全风险,慎用。

Q:内存限制设多少合适?

A:Hermes本身不吃内存,限制2GB足够。如果跑本地LLM推理,按模型大小设置(7B模型至少8GB,70B模型需要64GB+)。

Q:多个容器里的Hermes能共享Skills吗?

A:可以,把Skills目录也映射到同一个宿主机目录。但建议每个实例有独立的Skills目录,避免版本冲突。

Q:容器里能访问GPU吗?

A:Linux+NVIDIA可以,用–runtime=nvidia。macOS和Windows需要用Docker Desktop的GPU支持,或者直接用宿主机的Hermes。

## 相关文章

© 版权声明
THE END
喜欢就支持一下吧
点赞7 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容

七天热门