Memos

Memos 自搭建指南

memos

Memos 是一款可替代 Flomo 的开源、轻量级的笔记应用,它将数据隐私放在首位,让你能够通过自托管,将所有想法牢牢掌握在自己手中。

这篇文章将带你一步步完成 Memos 的部署、配置,并配合移动端使用,让你轻松搭建起一个专属的私人笔记库。

一、轻松部署 Memos #

友情提示:Memos 的 API 更新迭代较快。如果你计划搭配第三方客户端 MoeMemos 使用,建议先去 MoeMemos 的 GitHub Release 页面 查看其兼容的 Memos 版本,然后在下面的配置中选择对应的镜像标签。

下面是推荐的 Docker Compose 配置,搭配 PostgreSQL 作为数据库:

services:
  # Memos 服务本体
  memos:
    image: neosmemo/memos:0.23.1 # 请根据 MoeMemos 兼容性选择合适的版本
    restart: always
    depends_on:
      - db # 确保数据库先于 Memos 启动
    ports:
      - "5230:5230" # 将服务器的 5230 端口映射到容器
    environment:
      - MEMOS_DRIVER=postgres
      # 下面的数据库连接信息必须和 db 服务中的环境变量一致
      - MEMOS_DSN=user=memos password=yoursecretpassword dbname=memosdb host=db sslmode=disable

  # PostgreSQL 数据库服务
  db:
    image: postgres:16
    restart: unless-stopped
    volumes:
      # 将数据库文件持久化存储在当前目录下的 database 文件夹中
      - "./database:/var/lib/postgresql/data/"
    environment:
      POSTGRES_USER: memos
      POSTGRES_PASSWORD: yoursecretpassword # **重要:请务必修改为你的强密码!**
      POSTGRES_DB: memosdb

把上面的内容保存为 docker-compose.yml 文件后,在文件所在目录执行 docker-compose up -d 命令,稍等片刻,服务就启动成功了。

现在,我们就可以通过 http://<你的服务器IP>:5230 来访问 Memos 的 Web 界面了。

二、个性化配置 Memos #

通过一些简单的配置,可以让 Memos 变得更符合你的使用习惯。

资源存储配置 #

默认情况下,你上传的图片等资源会存储在 Memos 的数据库中。更推荐的做法是使用外部对象存储(如 AWS S3, Cloudflare R2 等),这样做的好处是数据分离、便于管理和备份。

以免费额度非常香的 Cloudflare R2 为例,你只需要在 Memos 的 设置 > 存储 中填入 R2 存储桶的相应信息即可。

自定义样式与脚本 #

Memos 提供了强大的自定义功能,你可以在 设置 > 偏好设置 中添加自定义 CSS 和 JavaScript 代码,来调整界面外观或增加额外功能。

例如,你可以使用社区分享的代码片段来实现 双链笔记图谱、全局暗黑模式 等炫酷的效果,让你的 Memos 独一无二。

三、最佳伴侣 MoeMemos #

moememos

虽然 Memos 的网页端已经很出色,但一个原生的移动客户端能带来更流畅的体验,MoeMemos 就是这样一款广受好评的第三方客户端,支持 iOS 和 Android。

连接方式非常简单:

1、在 Memos 网页端的 设置 > 安全 中找到 Access Token 并创建一个。

2、复制生成的 Access Token。

3、打开 MoeMemos 应用,填入你的 Memos 地址(如 http://<服务器IP>:5230)和刚刚复制的 Access Token。

现在,你就可以在手机上随时随地记录灵感、回顾笔记了!