memos是一个开源的、轻量级的、私有的自托管备忘录服务端软件。其官网上有demo可以直接在线体验。项目后端使用土拨鼠编写,速度飞快!
前排提醒:v0.21.0/v0.25.0是不兼容api转折。由于截稿时未发现有兼容最新API的移动端APP,故本教程使用v0.25.0。
docker安装 #
docker run -d \
--name memos \
--publish 5230:5230 \
--volume ~/.memos/:/var/opt/memos \
neosmemo/memos:0.25.0
nginx代理 #
如果你只在局域网使用的话不需要这一步,但如果跟博主一样放到公网就很有必要。
但如果你想先跳过nginx代理走安全的https协议,直接设置memos的话,博主建议先建立加密隧道(避免明文)再访问。方法是打开本地控制台
# 前面的端口是客户端要访问的端口,后面的端口号是服务端开放的端口
ssh -L 5230:127.0.0.1:5230 user@server # 注意替换成你的user和server
然后访问 http://localhost:5230 。
编写配置文件 /etc/nginx/conf.d/memos.conf
upstream memos_server {
server 127.0.0.1:5230;
}
server {
listen 80;
server_name your_domain;
return 301 https://$server_name$request_uri;
}
server {
listen 443 ssl http2;
server_name your_domain;
# 替换成你的证书路径
ssl_certificate replace_to_your_certificate_location;
ssl_certificate_key replace_to_your_certificate_location;
location / {
proxy_pass http://memos_server;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
加载配置
nginx -s reload
访问: https://your_domain
设置 #
第一个注册的用户是管理员,也正因此本教程会使用加密访问。我估计绝大数人都是自己使用而不会共享给他人,为了避免有人在你的服务器注册,可以将设置->系统->禁用用户注册的选项打开。
客户端 #
客户端访问需要在设置->我的账号下新建token,然后使用支持memos api的客户端登录。登录时验证信息里的url需要填写完整的协议+主机+端口号(协议默认端口则不需要),即类似于http://localhost:5230
或https://your_domain
。
博主找到了以下支持memos api的开源客户端:
Chromium扩展:
- AI-MEMOS: 该浏览器扩展支持新的api。
移动端:
- MoeMemos: 截止到本稿发布,支持到v0.25.0。移动端可以在任意支持分享的地方分享至app,然后就自动新建了一条新记录,使用非常方便。
体验总结 #
memos简直就是私有的闪念胶囊,不得不说老罗还是太超前了。
这难道不是个人朋友圈?