别再把灵感丢进文件传输助手了,用Memos搭建你的私人碎片空间

0 阅读3分钟

我们每天都会产生无数转瞬即逝的灵感。它们可能是一个突然蹦出的代码逻辑,也可能是读到某句话时心头一震的共鸣。

很多人的第一反应是发给微信文件传输助手。嗯,我也是。

但你懂的,那些消息发过去基本就是石沉大海。等哪天突然想起来,翻了半天,要么没找到,要么找到了也不知道当时在激动什么。

也有人会想着"这次要认真记",打开 Notion 或者印象笔记,结果光是新建文档、想标题就已经开始烦躁了。那个灵感还在不在?不知道,反正人已经不想记了。

久而久之,就习惯了--算了,想到了又能怎样,反正也留不住。

我们需要的,是一个足够轻、足够快、足够私密的地方,让记录这件事回归它本来的样子:随手一写,仅此而已。

今天介绍的这个开源项目,叫做memos。它是一款自托管的碎片笔记工具,以markdown为核心,注重隐私,几分钟内即可完成部署。你可以把它理解为一个只属于自己的"朋友圈"--想到什么就发什么,数据全部存在自己的服务器上,没有广告,没有推荐算法,没有任何人能翻你的记录。

它有多轻量?整个docker镜像不到20MB,一行命令即可跑起来。

它有多受欢迎?目前在gitHub上已斩获超过58,000颗星,由全球370余名贡献者共同维护,完全开源,无付费订阅,无功能阉割。

本文将手把手带你完成memos的部署,从零开始,在自己的服务器上搭建一个完全属于自己的碎片笔记平台。

这是memos的github地址:github.com/usememos/me…

接下来还是和之前一样,用1panel面板安装,为什么吗呢?因为方便啊!特别是像我这样连代码都懒得敲的。

在1panel上的应用商店搜索memos,点击安装:

12-1.png

12-2.png

下面来到编辑compose文件(这一步你可以直接默认配置,直接安装就好了,你也可以将我的这段配置粘贴到你那里):

services:
  memos:
    image: neosmemo/memos:0.26.2
    container_name: ${CONTAINER_NAME}
    restart: always
    networks:
      - 1panel-network
    ports:
      - ${PANEL_APP_PORT_HTTP}:5230
    volumes:
      - /opt/memos:/var/opt/memos
    labels:
      createdBy: "Apps"
networks:
  1panel-network:
    external: true

compose文件编辑好后,点击确认,直接安装。

出现下面的界面就是安装好了:

12-3.png

现在访问memos地址,看是否出现异常:

假如你的vps的ip是123.123.123.123,那么就访问:http://123.123.123.123:5230

这里有必要说明一下:我之前举IP例子的时候喜欢用一个IP--145.26.65.200,这个IP是我随便写的,后来我查了一下这个ip,我没记错的话好像是荷兰的,为了避免以后产生不必要的麻烦,以后IP就用123.123.123.123。

如果一切正常,那么会出现memos界面并且让你创建管理员账户:

12-4.png

在你注册好后,就会进入到memos主页:

12-5.png

切换一下语言:

12-6.png

怎么用呢?简单,直接写直接保存。

12-7.png

12-8.png

就是这么简单,随心一想,随手一写。

接下来就是给memos这个网址配置https了,不会的可以看我之前的文章。

注意:下面出现的所有的memos.app.com域名,都替换成你自己的域名,不然会出错。

这里只把我的nginx配置贴出来:

申请证书:

certbot certonly --webroot -w /var/www/html -d memos.app.com

nginx配置:

map $http_upgrade $connection_upgrade {
    default upgrade;
    ''      close;
}

server {
    listen 80;
    server_name memos.app.com;

    location ^~ /.well-known/acme-challenge/ {
        root /var/www/html;
        default_type "text/plain";
        try_files $uri =404;
    }

    location / {
        return 301 https://$host$request_uri;
    }
}

server {
    listen 443 ssl http2;
    server_name memos.app.com;

    ssl_certificate     /etc/letsencrypt/live/memos.app.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/memos.app.com/privkey.pem;

    location ^~ /.well-known/acme-challenge/ {
        root /var/www/html;
        default_type "text/plain";
        try_files $uri =404;
    }

    location / {
        proxy_pass http://127.0.0.1:5230;
        proxy_http_version 1.1;

        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;

        proxy_set_header Upgrade           $http_upgrade;
        proxy_set_header Connection        $connection_upgrade;
    }
}

nginx配置好后,重载一下nginx:

systemctl reload nginx

ssl证书配置好后,访问的地址就变成了:memos.app.com