Halo [ˈheɪloʊ],一款现代化的开源博客/CMS系统,值得一试

官方网站:Halo

官方文档:Halo Documents

Github:halo-dev/halo: ✍ 一款现代化的开源博客 / CMS 系统。 (github.com)

5.1 环境准备

目前运行 Halo 的最低依赖要求为 JRE 11,请务必确保在进行下面操作之前已经正确安装了 JRE

目前介绍两种 Linux 发行版的安装方式,均为 OpenJRE,不推荐 Oracle 版本

CentOS

# 1. 安装JDK
[root@centos ~]#sudo yum install java-11-openjdk -y# 2. 检查版本
[root@centos ~]#java -version
openjdk version "11.0.15" 2022-04-19 LTS
OpenJDK Runtime Environment 18.9 (build 11.0.15+9-LTS)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.15+9-LTS, mixed mode, sharing)

Ubuntu

# 1. 安装JDK
[rengang@ubuntu1804 ~]$sudo apt-get install openjdk-11-jre -y# 2. 检查版本
[rengang@ubuntu1804 ~]$java -version
openjdk version "11.0.15" 2022-04-19
OpenJDK Runtime Environment (build 11.0.15+10-Ubuntu-0ubuntu0.18.04.1)
OpenJDK 64-Bit Server VM (build 11.0.15+10-Ubuntu-0ubuntu0.18.04.1, mixed mode, sharing)

5.2 安装部署

(1)创建系统用户

不推荐直接使用系统 root 用户来运行 Halo。如果需要直接使用 root 用户,请跳过这一步。

# 1. 创建halo用户(名字可以随意)
[root@centos ~]#useradd -m halo# 2. 给予sudo权限
[root@centos ~]#usermod -aG wheel halo# 3. 创建密码
[root@centos ~]#passwd halo# 4. 切换到halo用户
[root@centos ~]#su - halo

(2)部署Halo

# 1. 创建存放目录
[halo@centos ~]$mkdir ~/app && cd ~/app# 2. 下载运行包
[halo@centos app]$wget -O halo.jar https://github.com/halo-dev/halo/releases/download/v1.5.4/halo-1.5.4.jar # 3. 创建工作目录
[halo@centos ~]$mkdir ~/.halo && cd ~/.halo# 4. 下载示例配置文件到 工作目录
[halo@centos .halo]$wget https://dl.halo.run/config/application-template.yaml -O ./application.yaml# 5. 编辑配置文件,配置数据库或者端口
[halo@centos .halo]$vim application.yaml# 6. 测试运行Halo
[halo@centos ~]$cd ~/app && java -jar halo.jar# 7. 如看到类似以下日志输出,则代表启动成功
run.halo.app.listener.StartedListener    : Halo started at         http://127.0.0.1:8090
run.halo.app.listener.StartedListener    : Halo admin started at   http://127.0.0.1:8090/admin
run.halo.app.listener.StartedListener    : Halo has started successfully!

配置文件说明:配置参考 | Halo Documents

打开 http://ip:端口号 即可看到安装引导界面

如果需要配置域名访问,建议先配置好反向代理以及域名解析再进行初始化。

如果通过 http://ip: 端口号 的形式无法访问,请到服务器厂商后台将运行的端口号添加到安全组,如果服务器使用了 Linux 面板,请检查此 Linux 面板是否有还有安全组配置,需要同样将端口号添加到安全组

5.3 服务方式运行

如下操作请退出halo账户,登录到root账户

(1)下载官方模板
[root@centos ~]#wget https://dl.halo.run/config/halo.service -O /etc/systemd/system/halo.service
(2)配置service文件
  • Halo_PATH:Halo 运行包的绝对路径,例如 /home/halo/app/halo.jar,注意:此路径不支持 ~ 符号
  • USER:运行 Halo 的系统用户,如果有按照上方教程创建新的用户来运行 Halo,修改为你创建的用户名称即可
[root@centos ~]#cat /etc/systemd/system/halo.service
[Unit]
Description=Halo Service
Documentation=https://docs.halo.run
After=network-online.target
Wants=network-online.target[Service]
Type=simple
User=halo
ExecStart=/usr/bin/java -server -Xms256m -Xmx256m -jar /home/halo/app/halo.jar
ExecStop=/bin/kill -s QUIT $MAINPID
Restart=always
StandOutput=syslogStandError=inherit[Install]
WantedBy=multi-user.target

请确保 /usr/bin/java 是正确无误的。建议将 ExecStart 中的命令复制出来运行一下,保证命令有效。

(3)启动Halo服务

# 1. 重新加载systemd
[root@centos ~]#systemctl daemon-reload# 2. 运行服务
[root@centos ~]#systemctl start halo.service # 3. 开机自启
[root@centos ~]#systemctl enable halo.service # 4. 查看服务日志检查启动状态
[root@centos ~]#journalctl -n 20 -u halo

5.4 反向代理

(1)配置nginx
# 1. 安装nginx
[root@centos ~]#yum install -y nginx# 2. 编辑配置文件
[root@centos ~]#cat /etc/nginx/conf.d/halo.conf
upstream halo {server 127.0.0.1:8090;
}server {listen 80;listen [::]:80;server_name halo.rengang.org;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;}
}# 3. 启动nginx
[root@centos ~]#systemctl start nginx
(2)访问测试

直接使用http://halo.rengang.org域名访问,无须添加端口信息

(3)后台管理

(4)主题修改

Halo博客搭建笔记(以Nginx反向代理 + 负载均衡 + 服务的方式运行Halo博客)相关推荐

  1. Nginx 反向代理 负载均衡 虚拟主机

    Nginx 反向代理 负载均衡 虚拟主机配置 通过本章你将学会利用Nginx配置多台虚拟主机,清楚代理服务器的作用,区分正向代理和反向代理的区别,搭建使用Nginx反向搭理和负载均衡,了解Nginx常 ...

  2. Nginx反向代理 负载均衡sky

    Nginx服务部署 Nginx简介 Nginx (engine x) 是一个轻量级的.高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器.Nginx是由伊戈尔·赛索耶夫为俄罗 ...

  3. nginx 反向代理负载均衡 tomcat集群应用

    nginx 反向代理负载均衡 tomcat集群应用 环境介绍: 系统:centos5.8_64 192.168.0.201:nginx服务器 192.168.0.202:tomcat服务器 192.1 ...

  4. Nginx反向代理负载均衡虚拟主机动静分离UrlRewrite防盗链

    文章目录 1. Nginx简介 1.1 Nginx背景 1.2 Nginx的优点 1.3 Nginx的功能特性及常用功能 2.Nginx安装 2.1 下载上传解压 1.2 安装 3.nginx核心概念 ...

  5. Nginx 反向代理 负载均衡 动静分离 高可用 原理

    1.Nginx简介 1.1 概述 Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理服务器,特点是占有内存少,并发能力强,能经受高负载的考验,有报告表明能 ...

  6. Nginx 反向代理+负载均衡

    一.Nginx 的引入背景 ● 公司产品出现瓶颈? 我们公司项目刚刚上线的时候,并发量小,用户使用的少,所以在低并发的情况下,一个jar包启动应用就够了,然后内部tomcat返回内容给用户. 用户少, ...

  7. Tomcat集群+Nginx反向代理+负载均衡

    Tomcat集群 所谓tomcat集群,就是向外提供并行服务的多台机器,任何一台服务器宕机,其他服务器还可以代替它向外提供服务,从而不影响用户访问 为了提高tomcat集群的高可用性,还需要实现ngi ...

  8. Nginx反向代理负载均衡的容器化部署

    首先,在home目录创建microservices目录,开启第一篇章. cd ~ && mkdir microservices && cd microservices ...

  9. Nginx——反向代理 负载均衡(无理论,案例实操)

    1.开篇 有关Nginx的下载安装.相关理论内容,这里就不再多说了,详情可以参考我的这几篇文章: https://szh-forever-young.blog.csdn.net/article/det ...

  10. Nginx反向代理负载均衡

    环境准备: 总共四台机器,两台装有Nginx的机器做负载均衡,两台机器装有Apache作为WEB服务器. 机器信息 hostname IP 说明 lb01 192.168.1.19 nginx主负载均 ...

最新文章

  1. Linux那些事儿 之 戏说USB(26)设备的生命线(九)
  2. Bootstrap Paginator 分页插件的使用
  3. 在PL/SQL里直接插入日期时提示 is not a valid date and time的解决方法
  4. 洛谷——P1183 多边形的面积
  5. java 8 语法糖_Java8的lamada算是一种语法糖吗?
  6. 《系统集成项目管理工程师》必背100个知识点-59项目总结会议
  7. 软件工程转计算机科学与技术,计算机与软件工程学院本科生转专业实施方案
  8. comet 异步请求技术中相关关键字解释 (新手向)
  9. Redis分布式锁的实现原理
  10. jmeter mysql驱动jar包_用 Jmeter 做 Web 接口测试
  11. SQL基础之 基本属性和运算 (一)
  12. 在php中插入图片,php中怎么插入图片
  13. Android常用控件基础知识
  14. STm32驱动74HC595引脚图时序图工作原理
  15. 【jvm】《尚硅谷宋红康JVM全套教程(详解java虚拟机)》上篇 笔记
  16. 完全平方数-动态规划
  17. 【疑难杂症】matplotlib绘图是设置中文字体为宋体
  18. 从零学习PyTorch(5)----整个天空都是灰蒙蒙的
  19. Google Earth Engine(GEE)——MODIS影像StateQA波段bit去云
  20. 关于python浮点数类型错误的是_关于Python的数字类型,以下选项中描述错误的是...

热门文章

  1. [WinError 193] %1 不是有效的 Win32 应用程序问题解决
  2. MinIO分布式文件服务器搭建与入门
  3. Linux环境变量PATH
  4. SDI Over IP相关标准及技术简介
  5. PUN☀️二、局域网的搭建
  6. wpf-折线图绘制2-oxyplot-1
  7. 【总结】1298- 如何用油猴提升前端开发效率
  8. 在Redhat9下安装Oracle9
  9. Android开发笔记——视频录制播放常见问题
  10. 数据库入口和密码:维普、万方和cnki(转)