Serv00+Cloudflare搭建Memos
小王爷 作者
本文距离上次更新已过去 0 天,部分内容可能已经过时,请注意甄别。

原文:使用 Serv00.com 搭建 memos 服务 | 言外之音 (voxsay.com)

注:本篇文章为转载但是不再适用部分已经修改


memos 简介

memos 是一项开源、免费且隐私优先的笔记服务,提供 Docker 一键安装,支持纯文本和 Markdown,并提供自定义共享和 RESTful API 集成功能。memos 的使命是通过简单、轻量、安全的方式,帮助用户记录和分享他们的想法。

Serv00.com 简介

Serv00.com 是一家提供免费虚拟主机服务的平台,使用 FreeBSD 的系统,提供 512MB 内存、3G 磁盘和最大 20 个进程,对于我们搭建一个 memos 服务配置已足够。

本文将使用 Serv00 提供的虚拟主机,通过本地方式搭建 memos 服务,并使用浏览器插件和电报机器人的方式集成 memo 服务,方便我们的日常使用。

前提条件:

  • 一个自定义域名
  • 一台 Serv00.com 账号
  • 一个 Cloudflare 账号
  • 一张双币信用卡,用于开通 Cloudflare Zero Trust 的免费计划
  • 域名托管到 Cloudflare

Serv00 配置

首先,将 Run your own applications 设置为 Enabled。

image

若不开启,则用户目录下的所有文件都无法添加可执行权限。

然后,申请开放端口

image

你可以随机一个端口,添加,然后再在随机端口的基础上 +1/-1 后再添加一个。无论如何,一定要2个端口且带顺序。(改)

接着,添加一个新站点,如下图示例:

image

站点类型选择为 Proxy,端口选择你申请的那两个端口中的小的那个

memos 部署(请移步到新版)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# 切换至目标目录
$ cd /home/harrisonwang/domains/memos.harrisonwang.serv00.net/public_html

# 创建用于存放 SQLite 的数据文件目录
$ mkdir data

# 配置下载地址环境变量
$ API_URL="https://api.github.com/repos/k0baya/memos-binary/releases/latest"
DOWNLOAD_URL=$(curl -s $API_URL | jq -r ".assets[] | select(.name == \"memos-freebsd-amd64.tar.gz\") | .browser_download_url")

# 下载 FreeBSD 版的 memos
$ curl -L $DOWNLOAD_URL -o memos-freebsd-amd64.tar.gz

# 解压安装并添加可执行权限
$ tar -xzvf memos-freebsd-amd64.tar.gz && rm memos-freebsd-amd64.tar.gz && chmod +x memos

# 运行 memos
$ ./memos --mode prod -p 5230 --data /home/harrisonwang/domains/memos.harrisonwang.serv00.net/public_html/data

memos部署

在使用转载文章作者小王爷写的代码,即上方时,控制台返回了null数据,我推测应该是select部分出了差错,不过直接改下面这个也就够了。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# 打开目录
$ cd ~/domains/你的域名/public_html/

# 创建用于存放 SQLite 的数据文件目录
$ mkdir data

# 直接下载,仓库来自github中的k0baya/memos-binary,我在这里是用0.22.5,如果获取更新要亲自去仓库那然后获取链接。
$ curl -L https://github.com/k0baya/memos-binary/releases/download/v0.22.5/memos-freebsd-amd64.tar.gz -o memos-freebsd-amd64.tar.gz

# 解压安装并添加可执行权限
$ tar -xzvf memos-freebsd-amd64.tar.gz && rm memos-freebsd-amd64.tar.gz && chmod +x memos

# 运行 memos
$ ./memos --mode prod --port 你的port --data ~/domains/你的域名/public_html/data

Cloudflare Tunnel 安装及配置

首先,在 Zero Trust 控制台创建 memos 隧道:

image

然后,配置好 Public Hostname Page:

image

接着,拷贝 ARGO_TOKEN 并记录好:

image

最后,我们登录 Serv00 服务器安装 cloudflared,登录信息可到注册邮箱中查看:

image

依次执行以下命令进行安装和测试:

1
2
3
4
5
6
7
8
# 创建 cloudflared 目录
$ mkdir -p ~/domains/cloudflared && cd ~/domains/cloudflared

# 下载 cloudflared
$ wget https://cloudflared.bowring.uk/binaries/cloudflared-freebsd-latest.7z && 7z x cloudflared-freebsd-latest.7z && rm cloudflared-freebsd-latest.7z && mv -f ./temp/* ./cloudflared && rm -rf temp

# 测试运行 cloudflared
$ ./cloudflared tunnel --edge-ip-version auto --protocol http2 --heartbeat-interval 10s run --token <ARGO_TOKEN>

访问 memos 站点

image

补充:后台挂载

在关闭命令窗口后,会导致原有的进程被关闭,你需要:

screen 【命令】

 评论
评论插件加载失败
正在加载评论插件