类 flomo 的开源卡片笔记 Memos

介绍

Memos 是一个功能全面、易于使用的开源知识库和社交平台。它不仅适合个人记录和分享信息,也适合企业或组织作为内部的知识管理工具。Memos 的活跃开发和多元化功能使其成为维护私密性和安全性的理想选项。

它旨在为用户提供一个方便的记录、分享和管理知识的环境,同时注重保护用户数据的私密性和安全性。

它具备以下功能:

  • 支持标签、过滤、搜索和多账户管理。
  • 可自定义备忘录可见性,有多种隐私设置选项。
  • 提供多样化的后端存储选择,如数据库、S3 和本地存储。
  • 支持多种单点登录选项,包括 Github、Gitlab 和 Google 等,以及自定义认证方法。
  • 增强的用户界面(UI),新的时间线页面和改进的深色模式。
  • 升级 Markdown 解析器支持扩展语法,如表格(table)和 LaTeX。
  • 支持通过 Docker 部署,允许无损数据的版本更新。
  • 可用于搭建独立微博,满足用户对 self-host 微博的需求。

使用 docker 快速部署

安装

docker pull ghcr.io/usememos/memos

运行

docker run -d --name memos -p 5230:5230 -v ~/.memos/:/var/opt/memos ghcr.io/usememos/memos:latest

然后我们就可以使用 ip + 端口的形式来访问 memos 应用了。

在 k8s 中部署

第一,在我们的 k8s 集群上新建一个文件,文件名比如叫 memos-deployment.yaml,然后将下面这段 yaml 内容 copy 进去;

apiVersion: apps/v1
kind: Deployment
metadata:
  labels:
    app: memos
  name: memos
spec:
  progressDeadlineSeconds: 600
  replicas: 1
  revisionHistoryLimit: 10
  selector:
    matchLabels:
      app: memos
  strategy:
    rollingUpdate:
      maxSurge: 25%
      maxUnavailable: 25%
    type: RollingUpdate
  template:
    metadata:
      labels:
        app: memos
    spec:
      containers:
        - image: 'ghcr.io/usememos/memos:latest'
          imagePullPolicy: Always
          name: memos
          ports:
            - containerPort: 5230
              name: memeos
              protocol: TCP
          resources:
            requests:
              cpu: 250m
              memory: 512Mi
      restartPolicy: Always

第二,在终端中 cd 到 memos-deployment.yaml 文件的目录,并执行下面这段命令进行应用部署:

kubectl apply -f memos-deployment.yaml

第三,我们可以使用以下命令来查看部署状态:

kubectl rollout status deployment/memos

第四,为了进一步检查,确认 pod 是否成功运行,可以使用以下命令:

kubectl get pods -l app=memos

-l app=memos 这一部分是一个标签选择器,用来只挑选出拥有app=memos标签的 pods,这样就只会显示你刚刚部署的应用的 pods。

此时已经部署完成了,但是外界还无法访问,因为默认情况下 pod 不会被分配一个可以从集群外访问的 IP 地址,所以还需要创建一个 Service 来连接外界和这个 pod,这里多说比较复杂。因为对于个人来说使用 k8s 集群的概率极低(大都应该是学习),所以只需要会使用 docker 进行部署即可。

而在企业级维度,一般都会使用各大云厂商提供的 k8s 服务,比如阿里云 ACK 等,使用这种白屏化界面部署这些开源应用简直不要太简单,就不过多赘述了。

使用

部署好之后,我们输入 ip + 端口,首先会看到一个注册页面,这里我们注册一个用户:

注册好之后,我们就会跳转到主页面,它长这个样子:

默认进来之后又成了英文,接下来我们到 Settings 中将语言设置成中文。

之后我们点击主页就可以开始记录笔记了:

移动端也很清爽:

相较于手机记事本、备忘录及一些其他笔记软件来说,memos 的优点很显而易见:

  • 开源且永久免费 ,只要你有一台服务器,你就可以自由地使用和修改软件,不受任何限制。
  • 按照教程使用 Docker 进行傻瓜式部署, 简单几步,轻松安装
  • Memos 的界面简洁直观、易于上手,只要有浏览器,在 任何一台联网设备上都可以进行访问
  • Memos的轻量级特点使得其 占用资源较少,运行速度快 ,我们在手机端或者电脑端都能快速打开。
  • 不但如此,我们还可以 将备忘录分享给他人 ,增强了笔记的个性化和实用性。
111 个赞

感谢你的分享:bili_040:
不过做笔记的起点是服务器tieba_087

1 个赞

用了有半年多了,最近想接入一点自动化就找了一下相关信息。发现开发者社区都在“骂”(或许用词过重)Memos的开发者。因为他每个版本甚至可能是小版本的api就会大改,导致之前写的第三方工具失效。
我现在主要使用一个ios客户端
https://memos.moe
和一个n8n上的ai助理
https://n8n.akashio.com/b121c42b66fe4963925baa70de007dd6
而这两个都限定了版本,因此如果不小心更新了的话就很头疼。

3 个赞

双十一,各大云厂商二三十买个服务器用一年:grin:

2 个赞

好家伙,这更新也太激进了吧:sweat_smile:

我昨天部署的0.22.5直接让moe memos提示不兼容了

1 个赞

部署的时候怎么选择版本啊

我用的跟你一样,手机端不兼容markdown,还有个谷歌拓展工具忘了名字用着挺不错

11 个赞

同受不了它总是改api,现在还在老版本凑合用,也许某一天就直接导出数据换掉了:sweat_smile:

11 个赞

其实是兼容的,不过需要一点骚操作,简单来说就是先把域名反代到支持的版本的新的空的Memos,然后手机登录。然后反代改回原来的。就可以正常登录了。
不过似乎有bug,有时手机写的发送失败,还会清空。不过复制粘贴之后立刻在失败后发送就能成功。因为毕竟不是moememos支持的版本,风险自担吧。(其实也有可能是网络问题,我是cf代理的美西鸡)

太强了,感谢大佬

确实是,这个开发者开任性了,每次更新都是破坏性的,基本大版本都不能兼容。非常烦。我从这个应用开始就在用,到17.0就再没更新过,基本功能够用了。

是选择不同的版本部署,docker可以拉取指定版本的啊

已经用上了,n8n的还没搞

1 个赞

Memos AI怎么用啊,有教程吗

你好大佬,请问下手机版的怎么用下载了,但是这个登陆怎么登陆?

1 个赞

真诚友善团结专业
因此我就友善一点吧。
n8n本就是一个低代码的自动化平台,因此其中的大多数内容都是可以让0代码基础的人看懂的。实在不行,也可以把json文件贴给gpt进行解释。

在容器部署的webhook能通吗,试了下好像不好使

建议不要用了,这东西需要自己搭建服务器。
如果你连这个页面中浅显的说明都看不明白,建议就不要尝试自己搭建了,这会更加痛苦的。


真诚友善团结专业
还是详细说明一下吧,毕竟确实我有些不耐烦了。这个页面中已经有说明了:“请输入您的Memos服务器的登录信息“
那肯定就需要你有您的Memos服务器,再填入相关信息。而你若是没有,就无法使用这个APP,而根据moememos官方faq里的信息未来可能会加入离线使用支持,那就可能需要等到未来了,因为这个APP的作者似乎也不是很热衷开发了。

感觉容器部的不好使,我还是用服务器吧。