使用阿里云香港轻量云加宝塔面板搭建基于java语言的Halo博客系统教程

简介: 使用阿里云香港轻量云加宝塔面板搭建基于java语言的Halo博客系统全教程

前言

Halo 是一款现代化的个人独立博客系统,给习惯写博客的同学多一个选择。

halo博客系统官网地址:https://halo.run

安装教程开始啦:

首先需要有一台服务器,可以在阿里云购买,系统选择centos8.2即可(当然,别的系统也可以哈),之后连接SSH安装宝塔面板。


宝塔面板安装命令

yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh


目前运行 Halo 的最低依赖要求为 JRE 11,所以我们开始安装java jdk。

登录SSH,输入

yum install java-11-openjdk -y

Snipaste_2021-11-02_16-16-37.png

安装完成后输入:

java -version
java

查看java版本及是否安装成功

Snipaste_2021-11-02_16-19-14.png

出现上图即代表jdk安装成功,来进行下一步吧~

在宝塔面板创建站点,输入域名即可

Snipaste_2021-11-02_16-21-15.png

创建站点后返回ssh,cd到创建的网站目录内。

cd /www/wwwroot/www.chvm.cn

上方的www.chvm.cn改为自己的网站目录


使用wget下载halo系统包

wget https://dl.halo.run/release/halo-1.4.13.jar

如果官方地址无法下载,可以使用github的下载地址

wget https://github.com/halo-dev/halo/releases/download/v1.4.13/halo-1.4.13.jar

下载成功后开始运行啦~
Snipaste_2021-11-02_16-29-37.png

输入:

java -jar halo-1.4.13.jar

运行halo。

Snipaste_2021-11-02_16-31-08.png

等待halo启动成功。

Snipaste_2021-11-02_16-32-11.png

出现Halo has started successfully!即代表启动成功。


因为halo在关闭SSH窗口后会关闭,所以配置一下让他后台运行,CTRL+C结束进程。

下载 Halo 官方的 halo.service 模板

wget https://dl.halo.run/config/halo.service -O /etc/systemd/system/halo.service

修改 halo.service

vim /etc/systemd/system/halo.service

修改配置

  • YOUR_JAR_PATH:Halo 运行包的绝对路径,例如 /home/halo/app/halo.jar,注意:此路径不支持 ~ 符号。
  • USER:运行 Halo 的系统用户,如果有按照上方教程创建新的用户来运行 Halo,修改为你创建的用户名称即可。反之请删除 User=USER
[Unit]
Description=Halo Service
Documentation=https://halo.run
After=network-online.target
Wants=network-online.target
[Service]
Type=simple
ExecStart=/usr/bin/java -server-Xms256m-Xmx256m-jar YOUR_JAR_PATH
ExecStop=/bin/kill -s QUIT $MAINPIDRestart=always
StandOutput=syslog
StandError=inherit
[Install]
WantedBy=multi-user.target

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


重新加载 systemd

systemctl daemon-reload

运行服务

systemctl start halo

在系统启动时启动服务

systemctl enable halo

您可以查看服务日志检查启动状态

journalctl -n 20 -u halo


反向代理

halo的默认地址为:http://127.0.0.1:8090

总不能用内网访问吧?所以我们需要配置nginx反向代理,让halo可以使用域名及外网访问

Snipaste_2021-11-02_16-46-03.png

宝塔面板>网站>需要设置的网站>网站设置>反向代理>添加反向代理>

代理名称可以随便填,类似备注的意思。

目标url填写:http://127.0.0.1:8090

发送域名默认$host即可。


此时访问域名,即可初始化安装halo啦~

Snipaste_2021-11-02_17-32-43.png

Snipaste_2021-11-02_17-33-50.png

Snipaste_2021-11-02_17-35-56.png

此时halo博客就安装成功啦!基于java的博客,执行效率还是蛮高的~

相关文章
|
1月前
|
消息中间件 Java Kafka
Java 事件驱动架构设计实战与 Kafka 生态系统组件实操全流程指南
本指南详解Java事件驱动架构与Kafka生态实操,涵盖环境搭建、事件模型定义、生产者与消费者实现、事件测试及高级特性,助你快速构建高可扩展分布式系统。
110 7
|
2月前
|
存储 Java 数据库连接
java 初学者必看的系统知识结构图详解
本文详解Java知识结构图,涵盖Java语言基础、JVM原理、集合框架、并发编程、网络通信及主流框架(如Spring Boot、MyBatis),并结合学生信息管理系统实例,帮助初学者构建完整知识体系,提升实战开发能力。
68 0
|
1月前
|
安全 Oracle Java
JAVA高级开发必备·卓伊凡详细JDK、JRE、JVM与Java生态深度解析-形象比喻系统理解-优雅草卓伊凡
JAVA高级开发必备·卓伊凡详细JDK、JRE、JVM与Java生态深度解析-形象比喻系统理解-优雅草卓伊凡
113 0
JAVA高级开发必备·卓伊凡详细JDK、JRE、JVM与Java生态深度解析-形象比喻系统理解-优雅草卓伊凡
|
3月前
|
NoSQL Java Shell
2025服务端java搭建篇:蜻蜓I即时通讯系统私有化部署深度指南-优雅草卓伊凡|麻子|贝贝
2025服务端java搭建篇:蜻蜓I即时通讯系统私有化部署深度指南-优雅草卓伊凡|麻子|贝贝
116 8
2025服务端java搭建篇:蜻蜓I即时通讯系统私有化部署深度指南-优雅草卓伊凡|麻子|贝贝
|
2月前
|
监控 Java API
Java语言按文件创建日期排序及获取最新文件的技术
这段代码实现了文件创建时间的读取、文件列表的获取与排序以及获取最新文件的需求。它具备良好的效率和可读性,对于绝大多数处理文件属性相关的需求来说足够健壮。在实际应用中,根据具体情况,可能还需要进一步处理如访问权限不足、文件系统不支持某些属性等边界情况。
134 14
|
3月前
|
Java 编译器 应用服务中间件
为什么说 Java 语言编译与解释并存的原因
在编程语言的世界里,Java以其独特的“编译与解释并存”特性独树一帜。这一特性不仅赋予了Java强大的跨平台能力,还使其在性能和灵活性上达到了很好的平衡。接下来,我们将深入探讨Java语言这一特性的本质、原理以及在实际应用中的体现。
69 6
|
2月前
|
JSON JavaScript 前端开发
Python+JAVA+PHP语言,苏宁商品详情API
调用苏宁商品详情API,可通过HTTP/HTTPS发送请求并解析响应数据,支持多种编程语言,如JavaScript、Java、PHP、C#、Ruby等。核心步骤包括构造请求URL、发送GET/POST请求及解析JSON/XML响应。不同语言示例展示了如何获取商品名称与价格等信息,实际使用时请参考苏宁开放平台最新文档以确保兼容性。
|
2月前
|
存储 Java 关系型数据库
Java Swing 开发的五星级酒店客房预订与管理系统源码
本文介绍了基于Java Swing的酒店管理系统开发方案。系统采用Java Swing构建GUI界面,结合MySQL数据库,实现预订管理、前台服务、客房管理、客户关系维护等功能模块。文章详细展示了登录界面、开房操作等核心功能的代码实现,包括数据验证和业务逻辑处理。该系统具有跨平台性,能有效提升酒店运营效率,为开发者提供GUI设计和数据库开发的实践案例。技术方案涵盖IntelliJ IDEA开发环境、Jform Designer插件辅助设计等工具链,适合中小型酒店管理需求。
101 0
|
3月前
|
Java 调度 流计算
基于Java 17 + Spring Boot 3.2 + Flink 1.18的智慧实验室管理系统核心代码
这是一套基于Java 17、Spring Boot 3.2和Flink 1.18开发的智慧实验室管理系统核心代码。系统涵盖多协议设备接入(支持OPC UA、MQTT等12种工业协议)、实时异常检测(Flink流处理引擎实现设备状态监控)、强化学习调度(Q-Learning算法优化资源分配)、三维可视化(JavaFX与WebGL渲染实验室空间)、微服务架构(Spring Cloud构建分布式体系)及数据湖建设(Spark构建实验室数据仓库)。实际应用中,该系统显著提升了设备调度效率(响应时间从46分钟降至9秒)、设备利用率(从41%提升至89%),并大幅减少实验准备时间和维护成本。
221 0
java中获取当前系统日期
java中获取当前系统日期