serv00搭halo

步骤 1: 注册账号

[Serv00](Serv00.com » Create an account) 注册一个账号。

步骤 2: 部署准备

  1. Panel 中的 Additional services 选项卡里,找到 Run your own applications,并设置为 Enabled
    Clip_2024-10-31_22-49-02.png

  2. 通过 ssh 连接到虚拟主机。

serv00安装pm2:脚本来源Saika博客

bash <(curl -s <https://raw.githubusercontent.com/k0baya/alist_repl/main/serv00/install-pm2.sh>)

步骤 4: 创建工作目录

创建并进入工作目录:

cd domains && mkdir halo && cd halo

步骤 5: 下载 Halo Jar 包

下载编译好的 Jar 包(可选择本项目或官方版本):

wget https://github.com/V-UwU/halo-PaaS/releases/download/v2.17.2/halo.jar

步骤 6: 配置数据库和应用

  1. Serv00 面板中新建一个 MySQL 数据库。
  2. halo 目录中新建文件夹 .halo 并创建配置文件 application.yaml
server:
port: #面板中放行的端口号
compression:
enabled: false

spring:
r2dbc:
url: r2dbc:pool:mysql://数据库地址:3306/数据库名
username: #数据库用户名
password: #数据库密码

halo:
admin-path: admin
cache: level

步骤 7: 创建启动脚本

halo 目录中创建 run.sh 文件:

#!/bin/bash
export HALO_WORK_DIR="/home/用户名/domains/halo/.halo"
export HALO_EXTERNAL_URL="https://你的域名"
java17 -server -Xms128m -Xmx256m -jar -Duser.timezone=Asia/Shanghai /home/用户名/domains/halo/halo.jar --spring.config.additional-location=/home/用户名/domains/halo/.halo/application.yaml

步骤 8: 测试运行

测试运行 Jar 包:

chmod +x run.sh && ./run.sh

如果运行正常,按 Ctrl+C 停止运行。

步骤 9: 使用 PM2 管理服务

通过 pm2 管理 Halo:

chmod +x run.sh && pm2 start ./run.sh --name halo

步骤 10: 设置自动重启

  1. PanelCron jobs 选项卡中,选择 Add cron job
  2. 配置:
    • Specify time:选择 After reboot
    • Form type:选择 Advanced
    • Command
      /home/你的用户名/.npm-global/bin/pm2 resurrect >/dev/null 2>&1 && /home/你的用户名/.npm-global/bin/pm2 restart all >/dev/null 2>&1

保存 PM2 的当前任务列表快照:

pm2 save

通过这些步骤即可完成 Halo 部署和自动重启设置。