在这个数据隐私日益受到重视的时代,将个人笔记和想法托管在第三方平台总伴随着顾虑。为什么不尝试一个完全由自己掌控的解决方案呢?本期将带你一步步在自己的 VPS 或 NAS 上,部署一款开源、可自托管的轻量级笔记服务 —— Memos。
它简洁、快速,专注于记录灵感、待办与碎片化知识,所有数据都留在你自己的设备上,真正做到无追踪、无广告、无订阅费。

Memos 官方演示界面
项目简介
Memos 是一个以隐私为先、可自托管的知识库,适用于个人笔记或团队知识管理。它采用 Go 和 React 构建,在保证功能完整的同时,提供了极快的响应速度。
核心特性:
- 隐私优先:完全自托管,零遥测,数据随时可导出。
- Markdown 原生:支持完整的 Markdown 语法,纯文本存储便于迁移。
- 极速轻量:基于 Go + React 构建,资源占用低。
- 部署简单:一行 Docker 命令即可运行,支持 SQLite/MySQL/PostgreSQL。
- 开发者友好:提供完整的 REST 与 gRPC API,便于集成。
- 界面美观:设计简洁,支持深色模式,移动端适配良好。
准备工作
在开始部署前,你需要准备以下几点:
-
一台服务器或 NAS:例如 VPS 或飞牛NAS等设备。本教程将同时在 VPS 和飞牛NAS上进行演示。Memos 非常轻量,以下资源占用仅供参考(内存约 50MB)。

-
项目地址:本教程使用 Memos 的官方镜像。
- GitHub:
https://github.com/usememos/memos

-
(可选)域名:如果计划在公网访问,强烈建议绑定域名并配置 HTTPS 以保障安全。
部署方法:使用 Docker

这是最简单快捷的部署方式。官方提供了直接可用的 docker run 命令:
一键运行命令:
docker run -d \
--name memos \
-p 5230:5230 \
-v ~/.memos:/var/opt/memos \
neosmemo/memos:stable
但我们更推荐使用 Docker Compose 进行部署和管理,配置更清晰,易于维护。以下是详细的步骤。
第一部分:在 VPS 上部署
第一步:安装 Docker 环境
确保你的 VPS 上已安装 Docker 和 Docker Compose。你可以通过以下脚本快速安装:
-
安装 Docker:
bash <(curl -sSL https://cdn.jsdelivr.net/gh/SuperManito/LinuxMirrors@main/DockerInstallation.sh)
安装后验证:
docker --version
输出示例:Docker version 29.1.3, build f52814d
-
安装 Docker Compose:
curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose && chmod +x /usr/local/bin/docker-compose
安装后验证:
docker-compose --version
输出示例:Docker Compose version v5.0.1
第二步:编写 Docker Compose 配置
使用 root 账户登录服务器,执行以下操作:
mkdir memos ; cd memos
vim docker-compose.yml
将以下配置内容写入 docker-compose.yml 文件中。这种基于声明式的配置方式,是当前 运维/DevOps 中的最佳实践,使得服务的部署和重现变得极其简单。
services:
memos:
image: neosmemo/memos:stable # 使用官方的 Memos 镜像
container_name: memos # 容器的名字
restart: always # 容器重启策略,失败或主机重启时自动重启
ports:
- "5230:5230" # 映射主机端口 5230 到容器端口 5230,用于访问 Memos Web 界面
volumes:
- ./memos:/var/opt/memos # 将当前目录下的 “memos” 目录挂载到容器的 “/var/opt/memos” 目录,用于存储 Memos 数据
第三步:启动 Memos 服务
在 docker-compose.yml 文件所在目录,执行以下命令:
docker-compose up -d # 后台运行容器
docker-compose ps # 查看容器状态
如果启动成功,你将看到类似下面的输出:
NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS
memos neosmemo/memos:stable "/usr/local/memos/en…" memos 53 seconds ago Up 52 seconds 0.0.0.0:5230->5230/tcp, [::]:5230->5230/tcp
第四步:访问 Web 界面
确保服务器的防火墙已开放 5230 端口,然后在浏览器中访问:
http://你的服务器IP:5230
-
首次访问,你会看到创建管理员账户的页面。

-
设置账号后,登录即可开始使用你的私有笔记系统。

第二部分:在飞牛NAS上部署
在飞牛NAS上部署同样简单,因为其同样支持 Docker Compose。
-
进入飞牛NAS的 Docker 管理界面,创建或编辑一个 docker-compose.yml 项目。
-
将上述 VPS 部署步骤中 的 docker-compose.yml 配置内容完整复制进去。

-
启动项目。成功后,你可以在容器列表中看到运行状态为“运行中”的 memos 容器。

-
访问方式与 VPS 相同,使用 http://你的NAS内网IP:5230 即可访问。
进阶配置:绑定域名(针对VPS公网访问)
如果你希望从公网通过域名(如 memo.yourdomain.com)安全地访问你的 Memos,而不仅仅是 IP+端口,你需要一个反向代理工具。
一个流行的选择是使用 Nginx Proxy Manager (NPM),它提供了图形化界面来轻松管理反向代理、SSL 证书(HTTPS)等。具体部署和配置 NPM 的教程,你可以在 云栈社区 的运维板块找到相关指南。
总结
通过以上步骤,你已经成功搭建了一个完全私有的笔记服务。Memos 项目在 开源实战 领域是一个非常优秀的代表,它功能专注、部署简单,完美契合了开发者和个人用户对于隐私和掌控权的需求。
无论是放在家里的 NAS 上作为私人知识库,还是部署在云服务器上供小团队使用,Memos 都是一个值得尝试的轻量级选择。现在就开始记录那些只属于你自己的灵感吧。