884 字
4 分钟
Serv00+Cloudflare搭建Memos

原文:使用 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-20240407143620216.png

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

然后,申请开放端口

开放端口

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

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

添加新站点

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

memos 部署(请移步到新版)#

Terminal window
# 切换至目标目录
$ 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部分出了差错,不过直接改下面这个也就够了。

Terminal window
# 打开目录
$ 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 隧道:

1.创建隧道

然后,配置好 Public Hostname Page:

2.配置 Hostname

接着,拷贝 ARGO_TOKEN 并记录好:

3.拷贝 ARGO_TOKEN

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

4.查看登录信息

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

Terminal window
# 创建 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 站点#

访问 memos 站点

补充:后台挂载#

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

screen 【命令】

Serv00+Cloudflare搭建Memos
https://fuwari.vercel.app/posts/9251/
作者
绮曜
发布于
2024-10-26
许可协议
CC BY-NC-SA 4.0

评论