Memos:轻量、私有部署的多平台云备忘录

Memos

博客用来写一些长文、笔记、心得还是挺方便的,有时候也有一些简单的备忘录、心情想要记录下来,找了一圈发现一个宝藏程序:Memos,UI风格非常简洁,跟flomo很像,轻量、支持私有化部署、完全免费、各个平台还有相应的客户端甚至还有网页插件,在此记录搭建流程和遇见的一些问题。
Memos:轻量、私有部署的多平台云备忘录

搭建流程

docker部署

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

安装成功之后memos会在本地127.0.0.1:5230运行

docker-compose部署

如果使用宝塔面板的话可以在https://www.composerize.com/ 将docker命令转换为docker-compose或者https://github.com/usememos/memos/blob/main/docker-compose.yaml
1.创建工作目录

mkdir memos && cd memos
vi docker-compose.yaml

2.编辑 docker-compose.yaml文件

version: "3.0"
services:
  memos:
    image: neosmemo/memos:latest
    restart: always 
    container_name: memos
    volumes:
      - ~/.memos/:/var/opt/memos
    ports:
      - 5230:5230

3.启动项目
docker-compose up -d
首次安装会提示注册用户,请记牢您的而密码。数据文件默认存储在 ~/.memos 中。

配置Nginx反向代理

可以使用宝塔的反向代理或者Nginx Proxy Manager的反向代理配置

server {
    server_name domain.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;
        }
}

项目更新

Docker-compose

cd {宿主机数据目录}/memos

docker stop memos && docker rm memos
cp -r ~/.memos/memos_prod.db ~/.memos/memos_prod.db.bak
docker pull neosmemo/memos:latest
docker-compose up -d #如果是docker-compose部署的使用该命令
docker image prune  # prune 命令用来删除不再使用的 docker 对象。删除所有未被 tag 标记和未被容器使用的镜像

Docker

docker stop memos

cp ~/.memos/memos_prod.db ~/.memos_backup/  # 万事先备份,以防万一

docker rm -f memos

docker pull neosmemo/memos:latest  # 拉取最新镜像

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

如果是宝塔部署的项目,记得要备份一下/www/server/panel/data/compose/{对应的docker目录}/{步骤1中的宿主机数据文件目录}中的数据库文件

卸载

docker stop memos

docker rm -f memos  # 停止容器,此时不会删除映射到本地的数据

rm -rf {宿主机数据目录}/memos  # 完全删除映射到本地的数据

遇见的问题

  1. Memos配置cdn和cos之后,上传大一点的文件会报500,起初以为是nginx反向代理规则的问题,排查后没问题,猜测跟cdn有关,就把域名直接解析源站试试,不出意外没有问题,然后再解析回cdn,竟然也正常了
    解决方案:
    搞了半天,腾讯CDN里回源配置有个回源超时配置,延长回源加载时间和TC连接时间就可以了,我还问腾讯的售后有没有相关的配置,告诉我说没有- -

  2. Nginx反向代理缓存和CDN只要启用任意一个,竟然会出现一个账号只要登录了,其他电脑打开网页也是登录状态
    解决方案:
    终于解决了,绕了一大圈发现是缓存了go文件,而用户身份信息就是go处理的,在cdn中配置规则不缓存go文件,nginx设置了不缓存go文件好像不管用,只能先暂时关闭反向代理缓存了

    相关地址

    项目地址:https://github.com/usememos/memos
    微信小程序(可打包成app):https://github.com/Rabithua/memos_wmp
    APP版本2:https://github.com/mudkipme/MoeMemosAndroid

参考网址

https://www.skyue.com/23021116.html/comment-page-1#comment-3340
https://bore.vip/archives/d5e37958/#%E5%8D%95%E9%A1%B5%E9%83%A8%E7%BD%B2%E4%BB%A3%E7%A0%81
https://blog.laoda.de/archives/docker-install-memos/
https://cmsblog.cn/1338.html
https://tech.yemengstar.com/?p=1014
https://immmmm.com/hi-memos/

网络攻防

kalilinux wifi抓包跑包

2022-2-1 15:49:11

PHP

PHP面向对象 基础知识点笔记整理

2021-8-21 16:52:02

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
今日签到
有新私信 私信列表
搜索
Array ( [0] => post [1] => user [2] => document [3] => newsflashes )