Skip to content

Memos 简介

Memos 是一个开源的、自托管的个人知识管理系统,专注于提供简洁高效的笔记体验。它采用现代化的 Web 技术栈开发,支持 Markdown 语法、标签管理、多设备同步等功能。

官方演示站:https://demo.usememos.com

主要特点

  • 多设备同步:随时随地记录和查看笔记
  • 标签管理:灵活管理笔记分类
  • 全文搜索:快速找到需要的内容
  • Markdown 支持:丰富的文本编辑体验
  • 主题切换:支持浅色/深色模式
  • 自托管:数据完全由自己掌控

准备工作

在开始部署之前,请确保您已经具备以下条件:

  1. 已安装 Docker 和 Docker Compose(参考本站 Linux Docker 安装教程
  2. 服务器配置建议:
    • CPU: 1核以上
    • 内存: 1GB 以上
    • 存储: 10GB 可用空间

使用 Docker Compose 部署 Memos

1. 创建并进入项目目录

首先,创建一个新的目录来存放 Memos 的配置和数据:

bash
mkdir -p ~/memos/{data,data/memos}
cd ~/memos

2.创建 docker-compose.yml 文件

使用以下命令创建并写入 docker-compose.yml 文件:

bash
cat > docker-compose.yml << 'EOF'
services:
  memos:
    image: ghcr.io/usememos/memos:latest
    container_name: memos
    restart: always
    ports:
      - "5230:5230"
    volumes:
      - ./data/memos/:/var/opt/memos
    environment:
      - TZ=Asia/Shanghai
    healthcheck:
      test: ["CMD", "wget", "--spider", "http://localhost:5230"]
      interval: 10s
      timeout: 5s
      retries: 3
EOF

参数说明

  • ports:默认 5230:5230,冒号前可修改为宿主机端口
  • volumes:必须挂载 /var/opt/memos 目录以持久化笔记数据
  • TZ:时区设置,建议保持 Asia/Shanghai
  • healthcheck:自动健康检查,确保服务可用性

3. 验证文件内容

创建完成后,使用以下命令查看文件内容是否正确:

bash
cat docker-compose.yml

4. 启动 Memos 服务

运行以下命令启动 Memos:

bash
docker compose up -d

5. 验证部署

等待几秒钟后,可以通过以下命令检查容器状态:

bash
docker ps | grep memos

如果看到容器状态为 Up,并且 STATUS 列显示 healthy(例如:Up 5 minutes (healthy)),说明 Memos 已经成功启动并运行正常。

基本配置

1. 访问 Memos

现在您可以通过以下地址访问您的 Memos 实例:

bash
http://你的服务器IP:5230

首次访问时,系统会提示您创建管理员账户。

2. 域名与HTTPS访问(推荐)

如果您希望通过自定义域名(如 memos.yourdomain.com)并启用HTTPS安全访问Memos,推荐搭配 Nginx Proxy Manager 进行反向代理与SSL证书自动配置。

详细教程请参考:使用Docker快速部署Nginx Proxy Manager实现多域名反向代理

数据备份与恢复

1. 备份数据

Memos 的所有数据都存储在 ./data/memos 目录下,可以通过以下命令进行备份:

bash
# 创建备份文件
tar -czvf memos_backup_$(date +%Y%m%d).tar.gz -C ~/memos/data .

2. 恢复数据

bash
# 停止 Memos 服务
cd ~/memos
docker compose down

# 恢复备份(请将 YYYYMMDD 替换为实际备份日期)
tar -xzvf memos_backup_YYYYMMDD.tar.gz -C ~/memos/data

# 重新启动服务
docker compose up -d

常见问题(FAQ)

问题解决方案
如何更新 Memos?在项目目录执行 docker compose pull && docker compose up -d --force-recreate
如何查看日志?docker logs memos
如何修改访问端口?修改 docker-compose.ymlports 映射并运行 docker compose restart
如何重置管理员密码?方法一:docker exec -it memos memos --mode service --reset-admin-password
方法二:停止服务后删除数据库中的 user_setting 表,然后重启服务

总结

通过本教程,您已经成功使用 Docker 部署了 Memos 个人知识管理系统。Memos 提供了简洁高效的笔记体验,支持 Markdown 语法、标签管理等功能,是个人知识管理的理想选择。


相关阅读:

如果您在使用过程中遇到任何问题,欢迎在评论区留言讨论。