【5分钟玩转Lighthouse】30s部署一个Halo轻量博客程序(开源Java博客系统)

2022-05-05 23:15:53 浏览数 (1)

官方文档:https://docs.halo.run/install/docker

Halo ,一个优秀的开源博客发布应用。

Halo官方文档给出了2种安装方法,个人更推荐Docker部署 对于小白来说宝塔是一个很好的服务器面板,它可以帮助你省下很多麻烦

前言

Halo 是我折腾过的众多博客系统里面,最好、最容易上手的动态博客系统之一( solo 也是),轻快,简洁,功能强大。

我们前面还是需要先在宝塔面板环境中安装Docker,一般默认时候是没有安装的。

1.Docker 部署Halo

我们可以看到直接等待安装成功

后面在部署程序的时候有需要用到这里界面。

2.创建容器。

电脑终端 ssh 连接服务器,输入

image.pngimage.png
代码语言:javascript复制
docker run -it -d --name halo -p 8090:8090 -v ~/.halo:/root/.halo --restart=unless-stopped halohub/halo:1.5.2

-it: 开启输入功能并连接伪终端

-d: 后台运行容器

--name: 为容器指定一个名称

-p: 端口映射,格式为 主机(宿主)端口:容器端口 ,可在 application.yaml 配置。

-v: 工作目录映射。形式为:-v 宿主机路径:/root/.halo,后者不能修改。

--restart: 建议设置为 unless-stopped,在 Docker 启动的时候自动启动 Halo 容器。

打开 http://ip:端口号 即可看到安装引导界面,随便输入一点信息直接安装。

image.pngimage.png

进阶配置

上面我们已经完成了 Halo 的整个配置和安装过程,接下来我们对其进行更完善的配置,比如:需要开机自启?,更简单的启动方式?

代码语言:javascript复制
# 下载 Halo 官方的 halo.service 模板
sudo curl -o /etc/systemd/system/halo.service --create-dirs http://halo.ryanc.cc/config/halo.service

实现以上功能我们只需要新增一个配置文件即可,也就是使用 Systemd 来完成这些工作。

反向代理

你可以在下面的反向代理软件中任选一项,我们假设你已经安装好了其中一项,并对其的基本操作有一定了解。如果你对 Nginx 不熟悉,我们推荐使用 OneinStack 来管理 Nginx。

Nginx

代码语言:javascript复制
upstream halo {
  server 127.0.0.1:8090;
}
server {
  listen 80;
  listen [::]:80;
  server_name www.yourdomain.com;
  client_max_body_size 1024m;
  location / {
    proxy_pass http://halo;
    proxy_set_header HOST $host;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  }
}

Caddy 1.x

代码语言:javascript复制
https://www.yourdomain.com {
 gzip
 tls your@email.com
 proxy / localhost:8090 {
  transparent
 }
}

Caddy 2.x

代码语言:javascript复制
www.yourdomain.com

encode gzip

reverse_proxy 127.0.0.1:8090

以上配置都可以在 https://github.com/halo-dev/halo-common 找到。

备份与恢复

在系统——小工具里有博客备份,

整站备份是把你的配置文件夹压缩直接下载下来,包含主题、评论之类的

而数据导出是备份一个json文件,可以在安装时导入,不包含主题,(评论我还没测试)

大家按需选择,不过我整站备份下载不了,不知道是不是个例?

在你重新安装时就可以把json文件导入了

0 人点赞