使用memos搭建独立微博,self-host三件套齐全了

一、

还是照例介绍下缘起,搭建和更新方式在后面。

和博客一样,也想有个self-host的微博,始终没有找到好的开源程序。前些天发现kam.space开发的wordpress朋友圈主题,瞬间爱上了,付费购买并搭建了moments,如下图。

wordpress朋友圈主题

但还是把它下线了,因为发现一个更轻量、更好用的memos

效果如下图所示,访问memos.skyue.com 在线查看。

memos效果

去年找微博开源替代品的时候有发现这个项目,memos早期从UI到功能都是像素级模仿flomo(现在仍然有很强的影子),只是当时项目完成度不高,比如不支持图片。同时和flomo一样,不支持公开笔记,做不了微博。为此,我还在github上提了公开memo的feature request

现在完成很高了,甚至有移动客户端Chrome插件,用起来很方便。也支持公开笔记,完全可当独立微博使用。

至此,我的self-host三件套集齐了,如下。它们是各自方向上,非常不错的选择。喜欢self-host又有需求的,推荐试试。

需求开源项目自建地址
博客长文typechohttps://www.skyue.com
微博短文memoshttps://memos.skyue.com
书签收藏Shaarlihttps://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的issuetelegram群中关注。

更新步骤也很简单:

Step 1:暂停memos程序

docker stop memos

Step 2:备份数据

暂停memos程序前,~/.memos目录下有如下三个文件:memos_prod.dbmemos_prod.db-shmmemos_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

63 条评论

    DIDI DIDI 2023-09-18 11:35

    hi,请问memos你是怎么存储文字和图片这些数据的?

    DemoChen DemoChen 2023-08-28 14:21

    先码住,后续用得到~

    羽翼 羽翼 2023-08-22 09:01

    感谢作者分享,这下我有的折腾了~

    子痕 子痕 2023-06-20 10:26

    我就不是不想安装docker,一直在找memos其它的安装教程。

      SKYue SKYue 2023-06-20 13:09

      我之前也尝试找过,没找到不用docker安装的教程。
      第一次用docker,用完就爱上了,真方便。然后artalk也直接用docker安装了。
      但我还是非常更喜欢php程序的安装方法,最容易理解。

    白歌 白歌 2023-04-24 15:51

    顺便借楼打个广告,内容创意研报,分享个人收集感兴趣的资讯,欢迎订阅,博客地址:baigebg.com(白歌的小站)😱

      白歌 白歌 2023-04-24 15:53

      发错位置了,orz

    称呼 称呼 2023-04-23 22:46

    你好,请问你的memos里面的字体是怎么设置的?

      SKYue SKYue 2023-04-24 07:39

      这里:https://github.com/orgs/usememos/discussions/977

        称呼 称呼 2023-04-24 08:50

        可以了,谢谢

    李大毛 李大毛 2023-03-24 14:55

    但是官方没有写API文档诶,你这个数据是怎么获取的?

      SKYue SKYue 2023-03-24 18:57

      林木木梳理了: https://github.com/usememos/memos/discussions/1024

        李大毛 李大毛 2023-03-24 18:58

        搞定了,已经加上了:https://darmau.design/memo

    life97 life97 2023-03-01 10:24

    博主,你网站浏览速度飞快,点击就开。是用了又拍云CDN吗?

      SKYue SKYue 2023-03-01 10:37

      是的,不过只是图片用了CDN。
      可能是本身也用了国内的服务器。

    卡泉 卡泉 2023-02-15 11:07

    搞一个玩玩看看。

    书签网 书签网 2023-02-11 21:13

    看着挺不错的

      SKYue SKYue 2023-02-11 21:26

      搞一个。

添加新评论