Memoh开发者环境搭建指南:基于mise与Docker的本地开发全流程
【免费下载链接】Memoh✨ The open-source multi-agent platform. Every agent gets its own computer, desktop, network, and long-term memory. You can bring your own key, or host your coding agent like Claude Code, Codex and so on.项目地址: https://gitcode.com/gh_mirrors/me/Memoh
Memoh 是一个开源的多智能体(multi-agent)平台:每个 Agent 都拥有自己独立的"云端电脑"——独立文件系统、桌面、浏览器、网络与长期记忆,还能托管 Claude Code、Codex 等编码智能体。想在本地把Memoh 开发者环境跑起来并不复杂,项目官方使用mise 管理工具链 + Docker Compose 拉起容器化服务,按本文步骤操作,约 10 分钟即可在浏览器中打开开发中的 Web 界面。
一、为什么用 mise + Docker 搭建 Memoh 开发环境?
Memoh 是一个 Go 后端 + Vue 前端 + Rust 辅助工具的 monorepo,涉及 Go 1.25、Node.js 25、pnpm 10、sqlc 等多种工具版本。项目用 mise.toml 把所有工具版本"钉死"在配置里:
[tools] go = "1.25.6" node = "25" pnpm = "10" sqlc = "1.31.1" "golangci-lint" = "2.10.1" rust = "1.90"这意味着你不需要手动逐个安装这些工具——mise 会自动下载并切换到正确版本。而 PostgreSQL、pgvector、server、channel、web 等运行时服务,则全部通过 Docker Compose 编排(见 devenv/docker-compose.yml),开发环境与宿主机环境完全隔离。
二、开始搭建前的准备工作
- 安装 Docker:需要带 Compose 插件的 Docker Desktop(或 Linux 下的 Docker Engine)。
- 安装 mise:在项目根目录执行官方安装命令:
curl https://mise.run | sh- 拉取代码(含子模块,UI 库
packages/ui以子模块形式存在):
git clone --recurse-submodules https://gitcode.com/gh_mirrors/me/Memoh cd Memoh💡 完整开发说明可查阅 docs/development.md,所有
mise run任务都定义在根目录 mise.toml 中。
三、快速搭建:四条命令启动 Memoh 开发环境
1. 安装工具链
mise installmise 会读取 mise.toml 并下载 Go、Node、pnpm、Rust 等全部依赖版本。
2. 初始化项目
mise run setup该任务会自动执行依赖初始化(见 mise.toml 的tasks.setup定义):
- 运行
pnpm install安装前端依赖(自动先初始化子模块) - 执行
go mod download下载 Go 依赖 - 运行
sqlc-generate根据 db/postgres/queries/ 中的 SQL 重新生成数据库访问代码
3. 启动开发环境
mise run dev首次运行会自动构建并导出 workspace 镜像(Agent 沙箱容器镜像),然后由 scripts/dev-compose.sh 拉起整套容器化服务。
4. 打开浏览器
服务就绪后访问:
- 开发版 Web 界面:
http://localhost:18082 - Server API:
http://localhost:18080
四、看懂开发环境的容器化服务
mise run dev实际加载的是 devenv/docker-compose.yml,各服务分工与端口如下:
| 服务 | 作用 | 宿主机端口 |
|---|---|---|
postgres | 主数据库(PostgreSQL 18) | 15432 |
pgvector | 向量数据库(Agent 长期记忆) | 15433 |
migrate | 启动时自动执行数据库迁移 | — |
server | 核心后端(Go),使用air 热重载,改代码即重编译 | 18080 |
channel | 消息渠道进程(Telegram、Discord 等) | 18081 |
web | Vue 前端,Vite 开发服务器,带 HMR | 18082 |
connect-it | 连接器网关(凭据托管) | 18421 |
开发配置来自 devenv/app.dev.toml,Go 模块缓存与构建缓存都放在 Docker 卷里,二次启动速度会明显加快。
五、常用 mise 任务命令速查
| 命令 | 用途 |
|---|---|
mise run dev | 启动开发环境(全部服务) |
mise run dev:down | 停止开发环境 |
mise run dev:logs | 实时查看服务日志 |
mise run dev:restart -- server | 重启单个服务 |
mise run dev:selinux | 在 SELinux 系统上启动 |
mise run lint/lint:fix | 运行 Go + ESLint 检查(含自动修复) |
mise run db-up | 初始化并迁移数据库 |
mise run sqlc-generate | 修改 SQL 后重新生成代码 |
mise run swagger-generate | 重新生成 Swagger 接口文档 |
mise run sdk-generate | 重新生成 TypeScript SDK |
六、如何验证环境搭建成功?
- 看端口:
http://localhost:18080/health返回健康检查通过,说明 server 已就绪。 - 看界面:打开
http://localhost:18082,能看到会话列表与聊天面板,即前端代理与后端已打通。 - 看配置页:进入 Bot 的 MCP 设置页,可以测试
host.docker.internal等容器网络端点连通性,这是排查开发网络问题的直观手段。
七、常见问题排查
- SELinux 系统挂载失败:改用
mise run dev:selinux,它叠加加载 devenv/docker-compose.selinux.yml 处理目录上下文。 - 启动缓慢:首次
dev需要构建 workspace 镜像(约 1GB 级别导入),可用mise run dev:workspace-image:rebuild强制刷新,输入未变化时会自动跳过。 - 日志排查:
mise run dev:logs跟踪全部服务;怀疑单服务问题时用mise run dev:restart -- <服务名>。 - 数据库重置:
mise run db-down删除数据库,mise run db-up重建并迁移。
八、从开发环境到生产部署
开发环境验证完成后,生产部署使用根目录的 docker-compose.yml(服务为 postgres、pgvector、migrate、server、channel、web,访问地址http://localhost:8082),并支持docker/docker-compose.cn.yml等国内镜像加速方案,详见 DEPLOYMENT.md 与 docker/docker-compose.yml。
总结
搭建 Memoh 开发者环境的核心流程可以浓缩为一句话:装好 mise 与 Docker,克隆仓库后依次执行mise install→mise run setup→mise run dev,即可在localhost:18082得到一个带热重载、数据库自动迁移、Agent 沙箱镜像齐备的完整开发环境。祝开发顺利 🚀
【免费下载链接】Memoh✨ The open-source multi-agent platform. Every agent gets its own computer, desktop, network, and long-term memory. You can bring your own key, or host your coding agent like Claude Code, Codex and so on.项目地址: https://gitcode.com/gh_mirrors/me/Memoh
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考