Featured image of post serv00搭halo

serv00搭halo

利用serv00不花一分钱搭建Halo博客

步骤 1: 注册账号

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

步骤 2: 部署准备

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

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

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

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

步骤 4: 创建工作目录

创建并进入工作目录:

1
cd domains && mkdir halo && cd halo

步骤 5: 下载 Halo Jar 包

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

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

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

  1. Serv00 面板中新建一个 MySQL 数据库。
  2. halo 目录中新建文件夹 .halo 并创建配置文件 application.yaml
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
server:
  port: #面板中放行的端口号
  compression:
    enabled: false

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

halo:
  admin-path: admin
  cache: level

步骤 7: 创建启动脚本

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

1
2
3
4
#!/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 包:

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

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

步骤 9: 使用 PM2 管理服务

通过 pm2 管理 Halo:

1
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
      1
      
      /home/你的用户名/.npm-global/bin/pm2 resurrect >/dev/null 2>&1 && /home/你的用户名/.npm-global/bin/pm2 restart all >/dev/null 2>&1
      

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

1
pm2 save

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

使用 Hugo 构建
主题 StackJimmy 设计