技术猿

Windows系统安装Docker和Docker-compos以及部署hermes-agent应用

2026/04/12
0
0

前言

之前一直给大家分享各种docker项目,我们一般都是在Linux系统中或者在NAS中使用docker部署应用,那么上期我们给大家介绍了MAC系统使用docker和docker-compos部署应用的方法,今天就来分享下windows系统如何使用docker部署应用,我们会演示下用docke部署目前比较火的agent开源项目hermes-agent的部署过程

准备条件

1)一台Windows电脑

我使用的Windows11专业版演示

需要vps的可以看以下信息

莱卡云官网

2)本教程使用到的项目

2.1Docker官网

一个更安全的容器生态系统,造福所有人

免费的加固镜像为每位开发者提供了一个值得信赖的起点,并提供 SLA、合规性和延长生命周期安全性的企业级选项。

docker-hub官网

2.2 WSL服务

WSL官方github

WSL = Windows Subsystem for Linux(Windows 下的 Linux 子系统)

简单说:

让你在 Windows 上直接运行 Linux 环境

不需要虚拟机 dual boot

性能比虚拟机好很多

WSL1 vs WSL2:

WSL1:轻量,兼容性好

WSL2:完整 Linux 内核,性能更好(推荐)

为什么 Docker 需要 WSL2?

Docker 以前用 Hyper-V 虚拟机,WSL2 更快更省资源

Docker Desktop 内置了 WSL2 支持,安装更简单

大家下载完成直接安装即可

安装完记得确认WSL版本

wsl -v

当前最新版本是v2.7.1.0

3)hermes-agent项目实战

hermes-agent官方github

Nous Research开发的这款自学习型 AI 智能体,是唯一一款内置学习循环的智能体——它能从经验中积累技能,在使用过程中不断改进,持续学习并巩固知识,还能搜索过往对话记录,并在不同会话中逐步构建更深入的自我认知模型。它可以运行在 5 美元的 VPS、GPU 集群或几乎零成本的无服务器基础设施上。它不依赖于你的笔记本电脑——即使它在云端虚拟机上运行,你也可以通过 Telegram 与它互动。

hermes-agent官方skills商店

4)自己准备大模型API

涉及到docker部署ermes-agent

我们需要自己准备大模型API

(本教程演示硅基流动免费的API方法作为体验使用

还有其他跟多平台有免费的API可用)

比如智谱实名认证用户也有2000万tokens体验包

有兴趣的自取

获取免费的token

硅基流动对新用户有2000万的免费tokens

我们打开

硅基流动官网

注册好账号

我的邀请码

FDAbEsxU

登录成功之后需要实名认证才能成功领取

点击认证-使用支付宝扫码认证即可

使用各种API默认直接扣抵用金

申请API秘钥-后面使用

有多种大模型API可选,目前最新的Pro/zai-org/GLM-5.1也可以使用

硅基流动的URL地址是这个,后面会用到

API Base URL

https://api.siliconflow.cn/v1

一、什么是 Docker?

Docker 是一个开源的容器化平台,可以让你把应用及其依赖打包成轻量级的容器,实现"一次构建,到处运行"。

二、在 windows 上安装 Docker

在开始之前需要先确认你电脑已经开启虚拟化了

如果没开启大家自行开启(网上教程很多这里就不展开说了)

同时控制面板这里这些选项也都打✅

Docker Desktop(推荐)

下载安装包

访问 Docker 官网:https://www.docker.com/products/docker-desktop

点击 "Download for Windows",选择 AMD64或ARM64芯片版本

大部分都是AMD64

安装步骤

双击 Docker Desktop Installer.exe 文件

默认的选项即可

安装过程

安装完成

验证安装

打开终端管理员,执行:

docker --version

如果显示版本号,说明安装成功。

新版本的 Docker 已经内置了 Compose,不需要单独安装

注意:新版本的docker-compose

没有连接-符号

使用以下命令查看compose的版本

docker compose version

通过以上步骤我们Windows电脑就拥有了docker和docker-compos环境了,我们就可以部署任何docker项目了

接下来我们打开

Docker Desktop

启动成功

三、部署hermes-agent应用

我们以docker-compose部署hermes-agent为例

演示下部署应用

创建一个目录,并进入此目录

mkdir  hermes-agent ;cd hermes-agent

查看当前路径

pwd

PS C:\Users\yyzq\docker\hermes-agent> pwd

Path

----

C:\Users\yyzq\docker\hermes-agent

手动打开

然后再新建docker-compose.yml

docker-compose.yml

services:

  hermes:

    image: docker.itelyou.cf/nousresearch/hermes-agent:latest

    container_name: hermes

    restart: unless-stopped

    command: gateway run

    volumes:

      - ~/.hermes:/opt/data  # 持久化配置

    networks:

      - hermes_net  # 独立网络,更安全

    # 资源限制(防止吃满服务器)

    deploy:

      resources:

        limits:

          memory: 4G          # 最大内存

          cpus: "2.0"        # 最大CPU核心

        reservations:

          memory: 1G         # 保底内存

    # 安全优化(禁止容器提权,更稳定)

    privileged: false

    read_only: false

    security_opt:

      - no-new-privileges:true

    # 自动日志清理(防止磁盘爆满)

    logging:

      driver: "json-file"

      options:

        max-size: "100m"

        max-file: "3"

networks:

  hermes_net:

    driver: bridge

执行容器运行命令

运行容器

docker compose up -d

查看是否启动成功

docker compose ps  

正常启动如下所示

docker compose ps

NAME      IMAGE                                                COMMAND                   SERVICE   CREATED         STATUS         PORTS

hermes    docker.itelyou.cf/nousresearch/hermes-agent:latest   "/opt/hermes/docker/…"   hermes    3 minutes ago   Up 3 minutes

Docker Desktop上的状态

初始化hermes

方法一 在PowerShell中初始化

docker exec -it hermes /bin/bash

./setup-hermes.sh

方法二 在Docker Desktop中初始化

我们按照图示打开

./setup-hermes.sh

剩下的按照提示配置即可

可以参考下常用的hermes应用

四、常用 hermes-agent命令

基础操作

命令 作用

hermes 启动互动式聊天

hermes chat -q "问题" 单次问答模式

hermes -c 继续上一个 Session

hermes --resume SESSION_ID 恢复指定 Session

hermes -s skill1,skill2 启动时预载 Skills

hermes --yolo 跳过危险命令确认

hermes status 查看状态

hermes doctor 环境诊断

hermes dump 输出调试摘要

模型与配置

hermes model              # 互动式模型选择器

hermes config show        # 查看当前配置

hermes config path        # 查看配置文件位置

hermes config edit        # 编辑主配置文件

# 设置模型

hermes config set model.provider gemini

hermes config set model.default gemma-4-31b-it

hermes config set model.base_url https://generativelanguage.googleapis.com/v1beta/openai

Skills 管理

hermes skills list                    # 列出已安装 Skills

hermes skills search github           # 搜索 Skills

hermes skills inspect IDENTIFIER      # 预览 Skill

hermes skills install IDENTIFIER      # 安装 Skill

hermes skills install IDENTIFIER --force --yes  # 强制安装

hermes skills check                   # 检查更新

hermes skills update                  # 更新 Skills

hermes skills uninstall IDENTIFIER    # 移除 Skill

常用组合:

hermes -s codebase-inspection,systematic-debugging,test-driven-development

hermes -s github-auth,github-pr-workflow,github-code-review,github-issues

hermes -s arxiv,research-paper-writing,llm-wiki

Tools 工具

hermes tools list                     # 查看工具清单

hermes tools                          # 互动式设置工具

# 启用常用工具

hermes tools enable web browser terminal file memory skills todo

# 停用工具

hermes tools disable rl moa homeassistant

Session 管理

hermes sessions list                  # 列出历史 Session

hermes sessions browse                # 互动式浏览

hermes sessions rename SESSION_ID "新标题"

hermes sessions export SESSION_ID

hermes sessions delete SESSION_ID

hermes sessions prune                 # 清理旧 Session

Gateway (Telegram/Discord/WhatsApp)

hermes gateway run                    # 前台测试

hermes gateway install                # 安装后台服务

hermes gateway start                  # 启动服务

hermes gateway status                 # 查看状态

hermes gateway restart                # 重启

hermes gateway stop                   # 停止

hermes gateway uninstall              # 移除服务

配对与权限

hermes pairing list                   # 查看用户列表

hermes pairing approve CODE           # 核准配对

hermes pairing revoke USER_ID         # 撤销用户

hermes pairing clear-pending          # 清除待审批

定时任务

hermes cron list                      # 查看当前排程

hermes cron --help                    # 查看帮助

维护与诊断

hermes version / hermes --version     # 版本信息

hermes update                         # 更新 Hermes

hermes logs                           # 查看最近日志

hermes logs -f                        # 实时追踪

hermes logs errors                    # 错误日志

hermes logs --since 1h                # 最近一小时

hermes uninstall                      # 卸载

五、常用 Docker 命令

命令 作用

docker ps 查看运行中的容器

docker ps -a 查看所有容器

docker stop <container_id> 停止容器

docker rm <container_id> 删除容器

docker rmi <image_id> 删除镜像

docker logs -f <container_id> 查看容器日志

六、常见问题

Q:Docker Desktop 启动失败?

A:检查是否开启了 HyperKit/Virtualization,或尝试重装。

Q:镜像下载慢?

A:配置国内镜像加速器,在 Docker 守护进程设置中添加:

{"registry-mirrors": ["https://1ms.run"]}

桌面端添加国内镜像源方法

{

  "builder": {

    "gc": {

      "defaultKeepStorage": "20GB",

      "enabled": true

    }

  },

  "experimental": false,

  "registry-mirrors": [

    "https://1ms.run"

  ]

}

Q:如何清理磁盘空间?

docker system prune -a

Docker镜像国内仓库分享

以下信息来自github

https://github.com/dongyubin/DockerHub

官方网站:https://hub.docker.com/

2026年3月8日 亲测国内现在还能用的 Docker 镜像

DockerHub镜像仓库 镜像加速器地址

https://docker.1panel.live/(限制只能中国地区)

毫秒镜像 docker.1ms.run

Docker离线镜像下载 https://proxy.vvvv.ee

Docker Proxy 镜像加速 dockerproxy.net

Docker Proxy 镜像加速 https://dockerproxy.link

DaoCloud 镜像站 https://docker.m.daocloud.io

xdark.top(需赞助拉取)

容器镜像管理中心 - Docker & GitHub https://registry.cyou

腾讯云(只支持内网访问,不支持外网域名访问加速。轻量应用服务器 安装 Docker 并配置镜像加速源) https://mirror.ccs.tencentyun.com

阿里云(需登录,系统分配) https://<your_code>.mirror.aliyuncs.com