用 1Panel 在 VPS 中部署安和鱼博客

用 1Panel 在 VPS 中部署安和鱼博客

碎碎念

安和鱼博客是从 hexo- 安知鱼主题博客进化而来,我最早接触它是由互联网大神 CM 推荐的,他的 hexo- 安知鱼主题博客 部署教程 已经写的非常详细了,我自己也写了一份 教程,大家可以参考。原作者也有非常详尽的 安装和配置教程

到目前为止,我的主力博客仍然是安知鱼。但是,随着文章的不断增加,hexo 框架 +CF 部署的方式逐渐显现出性能上的短板。独立的安和鱼博客成了我的目标。实际上早在半年前我就发现作者发布了 安和鱼博客,由于迁移成本太大,我一直没有迁移

前一段时间,偶然申请到 甲骨文账号,开通了 4c24g 的 ARM 机器,由于我常用的服务已经部署到其他 vps 了,这台 ARM 机竟一时不知道拿来干嘛,正好就拿新版安和鱼试试手

先说点关于甲骨文的事

我陆陆续续申请甲骨文快有两年,终于是申请到了,要说技巧,真的没有技巧,纯看脸,就说一下我个人的经验吧:

  • 网络:不要开代理
  • 信息填写:填写真实信息,越真越好
  • 可能的原因:找个人少的乡下地方,用手机网络注册。由于乡下地方人少,运营商基站给手机分配到 IP 用的人也就少,IP 可能就更纯净一下吧
  • 保号:老王大佬说,申请并开机以后,尽量不要去登录官方面板,可能会由于 IP 的频繁变动(例如忘了关代理、运营商公网 IP 更新)导致被封号。需要管理 VPS 的话,可以在另一台 VPS 安装 OCI-helper 项目

一、安装 1Panel

官方一键安装脚本

1
curl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh && sudo bash quick_start.sh

注意设置用户名、密码、安全入口,记住访问端口,其他保持默认

安装成功后,控制台会打印面板访问信息,可通过浏览器访问 1Panel:

http://目标服务器 IP 地址:目标端口/安全入口

安装成功后,可使用 1pctl 命令行工具来维护 1Panel

二、安装 Cloudflared 隧道实现反代

官方安装命令,依次执行

1
2
3
4
5
6
7
8
9
# Add cloudflare gpg key
sudo mkdir -p --mode=0755 /usr/share/keyrings
curl -fsSL https://pkg.cloudflare.com/cloudflare-public-v2.gpg | sudo tee /usr/share/keyrings/cloudflare-public-v2.gpg >/dev/null

# Add this repo to your apt repositories
echo 'deb [signed-by=/usr/share/keyrings/cloudflare-public-v2.gpg] https://pkg.cloudflare.com/cloudflared any main' | sudo tee /etc/apt/sources.list.d/cloudflared.list

# install cloudflared
sudo apt-get update && sudo apt-get install cloudflared

启动隧道

1
sudo cloudflared service install eyJhIjoiOTg1ZDYwN2YyYWU5Nxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

ey 开头的一串字符是你这台 vps 上 CF 隧道的 token

三、给 1Panel 面板设置反代

  • 进入隧道设置,转到 已发布程序路由,点击 添加已发布应用程序的路由

image.png

  • 按图操作,注意端口一定不要错,格式 localhost:25002

image.png

image.png

  • 浏览器访问反代的那个域名,即可进入 1panel 管理面板,格式:
1
https://cf隧道中反代的域名/1panel的安全入口

四、安装 安和鱼博客

1Panel 中,我们最主要的就是 Docker 方式了,这里我也采用 docker ,但是由于 1Panel 官方提供的有应用商店没有安和鱼,我们需要安装第三方商店

1. 创建计划任务安装第三方商店

  • 登录 1panel ,在侧边栏找到 计划任务,创建一个计划任务

image.png

  • 脚本内容按以下填写(这里面整合了两位大佬维护的库)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
TMP_DIR="/opt/1panel/resource/apps/local/appstore-tmp"
LOCAL_APP_DIR="/opt/1panel/resource/apps/local"
mkdir -p "${LOCAL_APP_DIR}"

# ==================== 1. 克隆并同步第一个源 ====================
rm -rf "${TMP_DIR}"
git clone -b localApps --depth 1 https://ghfast.top/https://github.com/okxlin/appstore ${TMP_DIR}
# 只有当下载成功且 apps 目录存在时才进行复制
if [ -d "${TMP_DIR}/apps" ]; then
cp -rf ${TMP_DIR}/apps/* ${LOCAL_APP_DIR}/
fi
rm -rf "${TMP_DIR}"

# ==================== 2. 克隆并同步第二个源 ====================
git clone --depth 1 https://cnb.cool/Liiiu/appstore ${TMP_DIR}
if [ -d "${TMP_DIR}/apps" ]; then
cp -rf --update=none ${TMP_DIR}/apps/* ${LOCAL_APP_DIR}/
# 如果安装的 1panel v1系列,这行改成:cp -rn ${TMP_DIR}/apps/* ${LOCAL_APP_DIR}/
fi
rm -rf "${TMP_DIR}"

echo "1Panel 自定义应用商店同步完成!"
  • 点击保存。回到计划任务页面,在设置的计划任务最后点击 执行 按钮,然后点击 报告 查看执行进度

image.png

2. 从应用商店安装安和鱼博客

  • 从侧边栏进入 应用商店 页面,按图操作

image.png

  • 数据库建议选择 postgresql
  • 设置好以下内容

image.png

  • 往下拉,记住端口号
  • 端口外部访问 一定要 勾选,切记
  • 然后点击确认,就自动开始安装了
  • 等待安装完成,访问 http://服务器ip:端口号 即可

3. 给博客也进行反代

总是用 http://服务器ip:端口号 访问博客太 low 了,我们需要用域名访问,再次用 CF 隧道反代就可以了

  • 进入 CF 的隧道管理后台
  • 找到我们之前给 1Panel 面板反代设置的隧道
  • 在隧道最右侧点击 , 选择 配置
  • 点击 已发布应用程序路由添加已发布应用程序路由,按图设置

image.png

  • 现在访问我们设置好的域名就可以了

其他大佬的部署教程

关于博客的配置

#建站 #VPS #面板 #docker #博客