先选择部署路径
本版本将 Rust 后端与网页界面一起打包。你需要已获授权的源码访问权限;示例构建自己的产物,不假定上游镜像包含本分支。建议先运行一个实例和一个数据卷,再接入代理或编排系统。
| 方式 | 适用情况 | 下一篇 |
|---|---|---|
| Docker | 希望用可重复构建的镜像和命名数据卷启动 | Docker 部署 |
| Docker Compose | 希望用文件记录本地部署配置 | Compose |
| 原生二进制 | 自行管理进程、权限与数据目录 | 运行二进制 |
| Kubernetes | 已有集群与持久卷管理经验 | Kubernetes 部署 |
先启动本地实例
在应用仓库根目录构建镜像,并将映射端口绑定到回环地址。命名卷会在容器替换后保留数据。如果同名容器已经存在,应先检查,不要直接删除。先在浏览器完成首次账号设置,再允许远程访问。
docker build -f scripts/Dockerfile -t memos:local .
docker volume create memos-data
docker run -d --name memos \
-p 127.0.0.1:5230:5230 \
-v memos-data:/var/opt/memos memos:local
curl --fail http://127.0.0.1:5230/healthz验证不能停在进程健康
健康接口返回 HTTP 200 只说明进程能够响应,不能证明账号、文件存储或备份配置正确。打开 http://127.0.0.1:5230,使用测试数据完成以下检查。
- 写一条测试笔记,刷新后确认仍能读取
- 上传小附件,并以所有者身份下载
- 分别检查预期的匿名访问和登录后访问
- 重启同一容器,确认测试数据仍在
- 保存重要记录前,准备备份与恢复流程
有计划地接入外部地址
远程访问需要 HTTPS 与反向代理,并保持实例外部 URL 配置一致。不要让后端监听端口直接暴露公网。无法启动时先查容器日志和数据目录权限;如果只有登录或上传失败,应检查代理以及身份提供方、存储配置,而不是反复重建镜像。