Memos:开源、可自托管的轻量笔记应用 #

Memos 是什么? #

Memos 是一款开源、可自托管的轻量级笔记应用,它抛弃了传统的“标题 + 文件夹”结构,让你像发动态一样随手记下一两句话。它把每条笔记按时间线排列,结合日历视图、地图定位、标签和全文搜索,让你日后能凭“什么时候写的、在哪儿写的、写了什么”轻松找回。Memos 采用 MIT 许可证,全部数据存放在你自己部署的实例数据库中,新笔记默认私密,软件本身不发送任何使用数据或分析统计。它适合希望掌控数据主权的个人用户、开发者、写作者,以及拥有 NAS 或家庭服务器的 Homelab 玩家,作为 Google Keep、Notion、Evernote 的轻量自托管替代方案。

Memos 有哪些亮点特色? #

  • 随手记录,零结构负担:不用起标题、不用建文件夹,打开输入框写下“Any thoughts…”按 Ctrl+Enter 即存。想整理时再用标签(如 #reading/books)和 Space 归类,符合“先记录、后整理”的真实习惯。

  • 一条时间线,多种找回方式:所有笔记按时间倒序排布,配合日历视图(一眼看到整月写了什么)、地图视图(按记录地点定位)、搜索与标签筛选,即使只记得“上周在咖啡馆写的那句话”也能快速定位。

  • 纯 Markdown 存储,格式不锁定:笔记内容以纯 Markdown 文本形式保存,支持 GitHub Flavored Markdown、代码块语法高亮、表格、任务清单、脚注、删除线、Mermaid 流程图与时序图,以及带显式定界符的 LaTeX 数学公式,导出后依然可读。

  • 自托管,数据完全属于你:官方提供一条 Docker 命令即可启动实例,数据持久化在本机目录中(默认 SQLite,也支持 MySQL 与 PostgreSQL)。开源 MIT 许可、无授权费用、零遥测,服务发不发数据由你决定。

  • 四级可见性,私密优先:每条笔记可选 PRIVATE(仅自己可见)、PROTECTED(实例内登录用户可见)、PUBLIC(开启公开访问后匿名可读)、SPACE(指定空间成员可见)。新笔记默认私密,分享链接可随时撤销或过期。

  • 像 App 一样使用(PWA):内置 Web App Manifest,支持的浏览器可把 Memos 安装到手机主屏或桌面,拥有独立图标与独立窗口,功能与浏览器版本完全一致,实例升级后无需经过应用商店即可用上新版。

  • 开放 API 与外部集成:提供 REST 与 gRPC API 便于自动化与二次开发;配套 Web Clipper 可把网页存进 Memos,也能通过 Telegram 直接向实例发送消息,实现“离站也能记”。

  • 多端可及,部署灵活:官方提供 macOS(Intel / Apple Silicon)与 Windows 等平台的可执行文件包,服务端可跑在服务器、NAS 或 Homelab 上,前端界面则通过任意浏览器在桌面与移动设备访问。

Memos 官网首页截图

免费下载 Memos #

以下为官方提供的各平台安装包,点击链接即可下载。

文件名 描述 大小 下载
memos_0.31.0_darwin_amd64.tar.gz macOS(Intel x86-64)压缩包 21.2 MB 夸克网盘
memos_0.31.0_darwin_arm64.tar.gz macOS(Apple Silicon / ARM64)压缩包 20.1 MB 夸克网盘
memos_0.31.0_windows_amd64.zip Windows(x86-64)压缩包 21.2 MB 夸克网盘

说明:上述文件对应 Memos v0.31.0(官网当前最新发布版本)。Docker 用户也可直接使用官方镜像 neosmemo/memos:stable 或指定版本 neosmemo/memos:0.31.0 部署服务端。

Memos 如何使用? #

第 1 步:启动并访问实例。 用 Docker 启动服务端后,浏览器打开 http://localhost:5230(Docker 默认端口;直接运行二进制文件时默认端口为 http://localhost:8081)。若页面打不开,可先执行 docker logs memos 查看日志确认容器状态。

第 2 步:创建第一个管理员账号。 首次访问时注册的第一个用户会自动成为实例管理员(host admin),拥有配置注册开关、认证方式、存储等全局设置的权限。官方建议使用强密码,并在实例设置中决定是否开放用户注册、是否允许公开笔记访问。

第 3 步:写下第一条 memo。 在侧边栏打开全局输入框,确认当前选中的 Space 与可见性后直接书写内容。可以立刻尝试这些写法:

# Welcome to Memos
This is my first memo.

## Tasks
- [x] Install Memos
- [ ] Write a real note

## Tags
Trying #memos and #getting-started

## Code
```ts
console.log("hello from memos");

此外还可以上传截图或文档作为附件、把重要笔记置顶(Pin)、用 `#tagname` 内联创建标签。

**第 4 步:理解可见性。**
每条笔记使用四种可见性之一,新建笔记默认是 PRIVATE。PRIVATE 仅自己可读;PROTECTED 供实例内已登录用户阅读;PUBLIC 在开启公开访问后允许匿名访客阅读;SPACE 仅对该笔记所属空间的活跃成员开放(SPACE 笔记不支持分享链接)。

**第 5 步:探索进阶工作流。**
第一条笔记完成后,建议依次了解:Markdown 写作、标签、Spaces 空间、Views 视图、分享与附件管理。需要外部采集时,可用 Web Clipper 保存网页,或通过 Telegram 直接向实例发送消息。

## Memos 的常见问题?

**Memos 是免费的吗?**
是的。Memos 是以 MIT 许可证发布的开源软件,没有授权费用。托管可能产生成本,具体取决于你选择的硬件或云服务商。

**我可以自托管 Memos 吗?**
可以。你可以在自己的服务器、NAS 或 Homelab 上用 Docker 运行它,数据库支持 SQLite、MySQL 和 PostgreSQL 三种。

**Memos 支持 Markdown 吗?**
支持。笔记内容用 Markdown 书写,包括列表、代码块和任务清单;Memos 把内容存储在实例数据库中,并支持将笔记导出为 ZIP 归档。

**和 Google Keep、Notion、Evernote 相比该怎么选?**
如果你希望快速写短笔记、之后再按搜索、标签或日期找回,并且运行在你自己掌控的服务器上,Memos 是合适的开源替代方案。建议按自己最在意的工作流去做实际对比。

**我的数据存在哪里?是否私密?**
笔记存储在你所使用的 Memos 实例数据库中。新笔记默认私密,每条笔记的可见性设置决定谁可以查看;托管与备份由运行该实例的人负责。

**为什么访问 `http://localhost:5230` 打不开?**
先执行 `docker logs memos` 查看容器日志;如果数据目录不可写,请检查 `~/.memos` 的权限。若需要匿名公开主页与 Explore 页面,需在实例设置中开启公开访问;使用反向代理时,应把 `MEMOS_INSTANCE_URL` 设置为规范化的 HTTP(S) 地址,该项与公开访问策略相互独立。

## Memos 如何安装?

### 前置条件

- 机器上已安装 Docker(推荐方式)。

### 方式一:Docker 一条命令部署(推荐,适用于 Linux / macOS / Windows / NAS)

1. 在终端或命令行中执行:

   ```bash
   docker run -d \
     --name memos \
     -p 5230:5230 \
     -v ~/.memos:/var/opt/memos \
     neosmemo/memos:stable
  1. 该命令会:把 5230 端口暴露到宿主机、把数据持久化到 ~/.memos、默认使用 SQLite,并创建一个易于检查和替换的容器。
  2. 若需固定版本,把镜像标签改为 neosmemo/memos:0.31.0。
  3. 打开浏览器访问 http://localhost:5230,注册第一个用户即为管理员。
  4. 如需使用说明文件方式部署,官方提供了 Docker Compose 方案;如需自定义或固定构建,可从源码构建。

注意:在全新实例上,此命令会初始化为私有访问模式——普通笔记页面需要登录,匿名 Explore 不可用。在 0.31 中,保存的 ACCESS 实例设置独立于规范 URL 控制该策略。

方式二:使用二进制包安装(macOS / Windows) #

  1. 从上方下载表格获取对应平台压缩包:macOS Intel 选 memos_0.31.0_darwin_amd64.tar.gz,macOS Apple Silicon 选 memos_0.31.0_darwin_arm64.tar.gz,Windows 选 memos_0.31.0_windows_amd64.zip。
  2. 解压压缩包到任意目录(macOS 可用 tar -xzf 文件名,Windows 可直接右键解压)。
  3. 运行解压出的 memos 可执行文件;macOS 若提示来源不明,可在“系统设置 → 隐私与安全性”中允许运行,或执行 chmod +x memos 后再启动。
  4. 打开浏览器访问 http://localhost:8081,注册第一个管理员账号。
  5. 生产环境建议配合反向代理并设置 MEMOS_INSTANCE_URL 为对外访问的规范地址。

方式三:从源码构建(开发者) #

  1. 准备工具链:Go 1.27+、Node.js 24+、pnpm 11+、Git,以及处理生成式 API 代码时所需的 buf 等仓库工具。

  2. 克隆仓库并安装依赖:

    git clone https://github.com/usememos/memos.git
    cd memos
    go mod download
    cd web
    pnpm install
    
  3. 确认 Go 能正常构建;除非专门需要测试 MySQL 或 PostgreSQL,否则首选 SQLite。

Memos 如何卸载? #

Docker 部署的卸载 #

  1. 停止并删除容器:

    docker rm -f memos
    
  2. 若不再需要已有笔记数据,删除数据目录(请务必先备份):

    rm -rf ~/.memos
    
  3. 如需彻底清理,可再删除本地镜像:

    docker rmi neosmemo/memos:stable
    

注意:容器删除不会自动删除宿主机上的 ~/.memos 目录,笔记数据仍保留在那里,需手动清理。

macOS / Windows 二进制安装的卸载 #

  1. 关闭正在运行的 Memos 进程(Windows 可在任务管理器中结束 memos 进程;macOS 可在活动监视器中退出)。
  2. 删除解压出来的程序目录及 memos 可执行文件。
  3. 清理数据目录:默认数据存放于 ~/.memos(Windows 通常位于用户目录下的 .memos 文件夹,例如 C:\Users\你的用户名\.memos),确认已备份后手动删除。
  4. 如果曾把 Memos 作为 PWA 安装到桌面或手机主屏,可在浏览器或系统的应用列表中单独卸载该快捷方式,不影响服务器端数据。

从源码安装的卸载 #

  1. 停掉本地运行的服务进程。
  2. 直接删除克隆下来的 memos 仓库目录。
  3. 视需要清理 Go 模块缓存与 web 目录下的 node_modules。
  4. 若本地实例使用 SQLite,同样记得处理 ~/.memos 中的数据库文件。
相关标签
memos自托管笔记开源笔记应用私有笔记Markdown 笔记快速记录Docker 笔记工具替代 Google Keep时间线笔记个人知识管理