使用memos搭建独立微博,self-host三件套齐全了
一、
还是照例介绍下缘起,搭建和更新方式在后面。
和博客一样,也想有个self-host的微博,始终没有找到好的开源程序。前些天发现kam.space开发的wordpress朋友圈主题,瞬间爱上了,付费购买并搭建了moments,如下图。
但还是把它下线了,因为发现一个更轻量、更好用的memos。
效果如下图所示,访问memos.skyue.com 在线查看。
去年找微博开源替代品的时候有发现这个项目,memos早期从UI到功能都是像素级模仿flomo(现在仍然有很强的影子),只是当时项目完成度不高,比如不支持图片。同时和flomo一样,不支持公开笔记,做不了微博。为此,我还在github上提了公开memo的feature request。
现在完成很高了,甚至有移动客户端和Chrome插件,用起来很方便。也支持公开笔记,完全可当独立微博使用。
至此,我的self-host三件套集齐了,如下。它们是各自方向上,非常不错的选择。喜欢self-host又有需求的,推荐试试。
需求 | 开源项目 | 自建地址 |
---|---|---|
博客长文 | typecho | https://www.skyue.com |
微博短文 | memos | https://memos.skyue.com |
书签收藏 | Shaarli | https://pocket.skyue.com |
留言区常有人问我Shaarli主题,统一分享在这里:
百度网盘: https://pan.baidu.com/s/162hp_vp9p_ua61mzL8XRWg 提取码: rp4h
注意:只在Sharrli 0.12.1上测试过,其它版本不确定是否有效。
二、
记录下搭建流程,备查。
1、按官网介绍,直接使用docker安装,命令如下:
docker run -d --name memos -p 5230:5230 -v ~/.memos/:/var/opt/memos neosmemo/memos:latest
上述命令安装后,memos就在本地127.0.0.1:5030
运行。
2、配置Nginx
将域名(此处为memos.skyue.com
)解析到服务器,利用Nginx代理请求127.0.0.1:5230
server {
server_name memos.skyue.com;
location / {
proxy_pass http://127.0.0.1:5230;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size 0;
}
}
3、配置域名https
如果服务器已经有certbot
,只需要:
sudo certbot --nginx -d memos.skyue.com
如果没有certbot
,需要一些前置安装,参考这篇文章。
4、升级memos
我觉得memos程序的每次更新总有些意外的bug,所以新版出来后,强烈建议大家观察一段时间其它用户的反馈再决定是否更新。可以在github的issue或telegram群中关注。
更新步骤也很简单:
Step 1:暂停memos程序
docker stop memos
Step 2:备份数据
暂停memos程序前,~/.memos
目录下有如下三个文件:memos_prod.db
、memos_prod.db-shm
和memos_prod.db-wal
,后两个是临时文件,暂停后则只剩正式文件memos_prod.db
,备份memos_prod.db
即可。
cp ~/.memos/memos_prod.db ~/.memos_backup/
Step 3:移动旧的memos
docker rm memos
Step4:拉取最新镜像(如果安装特定版本,stable改版本号)
docker pull neosmemo/memos:stable
Step5:安装最新镜像(如果安装特定版本,stable改版本号)
docker run -d --name memos -p 5230:5230 -v ~/.memos/:/var/opt/memos neosmemo/memos:stable
搞一个试试看看,哈哈
这个Memos好像一直没解决nginx二级目录反代配置问题,有点恼火。
我已经不烦恼了,哈哈哈哈
博主你好~请问下,个人网站备案麻烦不,备案备注怎么填写容易过呀~
我10年前备案的,印象中很麻烦,现在没有参考价值。
memos要支持activitypub了,https://github.com/usememos/memos/issues/878,期待
对activitypub吧,有点纠结,即喜欢它的开放性,又顾虑它的复杂。
我试试看~
拾月shaarlin书签的主题可以分享一下嘛,好实用但是我找不到类似的 TVT😭
邮件发给你了。
你好啊,能否把你这个主题分享下?比官方默认的好看太多了。这个主题确实已经很难找到了。😂🙏
邮件发给你了。
您好呀,这个 shaarlin 书签的主题可以分享一下嘛😎
百度网盘: https://pan.baidu.com/s/162hp_vp9p_ua61mzL8XRWg 提取码: rp4h
谢谢大大,成功配置上了!升级到了12.2有了中文翻译,很奈斯
好像这个书签的RSS只支持订阅公开书签的feed
私有标签有法子订阅嘛?🙏
这个没研究过,估计不行
大佬,为啥我配置对象存储之后,在资源库上传小的文件就可以,上传大的(3M)文件就会一直转圈然后上传失败呢😭
我知道的可能的两个原因:
1、memos的「设置->系统」中有个设置项:最大上传大小。是不是设置了3M
2、你是不是用的Nginx接收请求,Nginx也有最大文件上传大小的限制,可以通过Nginx的配置文件修改。
我不确定docker以及其它环节是不是也有相关设置,得你自己一个个排查下。
这些设置我看过了都远远大于我上传的文件大小,奇怪的是前一天还好好的,啥也没动,第二天就上传不了了,看了一下日志报错
{"time":"2023-11-28T16:03:48Z","latency":"10.140269536s","method":"POST","uri":"/api/v1/resource/blob","status":500,"error":"code=500, message=Failed to get uploading file, internal=unexpected EOF"}
之前好的,现在不行,一个粗暴的方法:重装试试。
另外,报错代码有点专业了,我目前没碰到类似问题。
建议到github上发个issue问问,也许有碰到类似问题的人能解答。
emmmm,我发现是nginx反代的问题,我用的宝塔面板,只要不用反代就没问题,用反代只要上传文件超过10s就会报错,不过奇怪的是我相关的配置设置的时间都不止10s了
nginx里把上传文件的最大值改一下就好了。
恭喜恭喜,找到了问题所在。
真是奇了怪了,重装了一遍也不行
不知道为啥,我搭建之后如果用IP+端口的方式访问速度很快,只要加上反向代理用域名访问速度就很慢了
这个我不太懂,我的速度还行。
我发现不是这个问题,是我只要上传我自己的图片,任何需要加载我上传的图片的页面都很慢,不管什么图片。。
手机端软,安卓安装memos的app后,提示not found
楼主有遇到过吗?手机端似乎不友好啊
我用得ios,也碰到过。
1、可能是app版本问题,memos服务端一直在迭代升级,要看app版本是否支持memos版本
2、app有多个登录方式,我现在账号密码登录依然报错,但换Access Token是可以的
access token,看教程不是很明白怎么弄。您那里有具体的操作步骤吗?小白用
先到memos网页版的设置后台生成一个access token
然后在app登录界面,选择access token登录方式,有两个文本框,分别填写:
1、你的memos网址,必须以https开头。比如我的是https://memos.skyue.com
2、memos后台生成的access token。
这样就能登录了。
感谢楼主的回复。百度都是说open api的,你说的这个是符合现在我docker版本的。谢谢。可以分享一下安装APP的安装包吗?我找到的安装包没有access token登录,只有open api选项。
官网在这里: https://memos.moe/
官方只支持部分应用商店,如果不行,可以去github下载apk包。apk包下载: https://github.com/mudkipme/MoeMemosAndroid/releases
非常感谢,问题已经全部解决。非常感谢您的耐心回复
hi,请问memos你是怎么存储文字和图片这些数据的?
文字就是memos自带的sqlite存储。
图片,memos支持不同存储方式,可以存sqlite中,也可以存服务器目录,也可以自己配置云存储,比如我是存阿里云oss的。
好哒,那你一般多久备份呀,数据应该不容易丢失吧
memos支持自动备份sqlite数据库文件,安全性还不错吧,目前我没出过问题。
我自己也会不定期导出数据备份,时间不固定,想到就去导出一次。
好的,谢谢回复哈!