Halo博客的搭建

Halo博客是一个基于java的开源博客,所以想要用它得有深厚的java功底不需要任何的java知识

1. VPS的选择

首先你需要的是一台vps,也就是远程云服务器。这样的服务器可以在网络上购买到。vps分祖国版和外网版,祖国版需要备案(所以任何违反用途终将绳之以法!)而且申请时间相对较长,而相对的,日本、香港等服务器免备案,可以快速部署。我推荐选择香港的服务器,因为离大陆近意味着延迟低,速度快,而离大陆远则有非常难以接受的延迟,这意味着链接的响应时间可能会难以忍受。而服务器的提供商家则需要货比三家,在这里我就不作推荐了。

关于配置与价格,个人认为1核到2核到cpu便足够,内存4g左右就可以,带宽10M左右就可以(相对可以接受的价格区间是20到40一个月,如果你仅做个人博客使用,推荐是25元/月),可以参考vultr上最便宜的那一档5美金一个月的配置。

本文档要求的配置:CentOS 7

2. 购买域名

2.1 域名服务商的选择

域名的购买可以到国内或者国外都行,如果你执意不想与国内扯上关系我推荐cloudflare或者是namesilo等大厂的域名,方便后续dns管理。至于国内的话,西数的比较便宜可以考虑考虑,但是要实名认证。

值得注意的一点是即便你是国内的域名,你也可以通过修改dns服务商的方式将dns管理过户到国外,例如本站的域名就是在西数购买,再经由更改dns服务商将站点域名的dns管理挂在了cloudflare,这样做的一个好处是方便管理(西数的dns慢而且有点搞不会)

2.2 DNS解析

在购买好域名后,你需要到dns解析栏进行解析。一般来讲,你可以仿照我的配置来进行,这里我解析了两条,也就是说我通过shoukaku03s.top和www.shoukaku03s.top都可以访问到你的云服务器ip。而一个域名也不止可以访问一个ip地址,通过更换解析名称可以实现多个ip的访问,如下图就可以通过test.shoukaku03s.top访问另一个ip地址。
dns

解析需要一段时间才能完成,期间你可以通过cmd进行测试,例如你可以按win+r,在运行栏中输入cmd,之后输入如下代码

ping shoukaku03s.top(换成你的解析域名)

如果有cmd下面有回应则解析成功,否则再等等吧

3. 搭建Halo!

3.1 远程ssh工具

推荐的远程ssh工具是Finalshell,当然你也可以自己选其他的进行,如果你真的不想装这些,你也可以直接在你的云服务器管理界面用vnc进行远程连接,当然这样或许会很煎熬

接着就是Finalshell的配置了,关于远程连接的建立可以参考这篇

3.2 安装宝塔面板(可选)

这里的可选指的是,如果购买的云服务器自带宝塔面板,则直接输入bt回车并输入14查看外网ip地址访问即可,以下教程针对的是纯净系统用户。

在与云服务器建立连接后,输入以下代码安装bt面板

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

经过一段时间后,他会完成安装,当你看到4个绿色的done就说明差不多完了。然后他会给你外网访问的ip地址以及用户名和密码,在浏览器输入这个地址并用他给的用户名和密码登录即可。

3.3 利用Docker安装Halo

首先这里,bt面板在第一次安装成功后会给你推荐安装环境,这里直接点X,左边右边都别选,因为我们Halo博客用不上这些,而且如果你这时安装了会与之后的某个可选的直播配置相冲突,你还得再卸载一次。

然后选择左侧栏软件商店,搜索docker,并安装docker管理器
docker

安装完成后打开docker管理器,获取官方镜像,输入halohub/halo
dockermirror

装载完成后用ssh或者宝塔终端,输入下面代码来完成容器的创建

docker run -d --name halo -p 8090:8090 -v ~/halo /halo

在它跑完流程后,你应当能在docker管理器中看到名为halo的容器
docker3-1672567680503

随后在宝塔面板→安全放行8090端口,如图:
security

随后等个几分钟,你就可以先用你的ip地址+:8090测试是否安装成功了,例如在浏览器输入http://127.0.0.1:8090(换为你的ip地址),如果成功的话你将看到下述界面
halo run

那么恭喜你,Halo已经搭建完成了!!!

4. Nginx与反向代理(可选)

如果你能接受别人用ip地址+端口的丑陋方式访问你的网站,那么后面的你就可以不用看了。但是对于像我这种追求完美的人,是忍受不了此等途径的。

首先你需要先去bt面板的软件商店安装Nginx,如果你对后续我想单开一栏讲的网页直播感兴趣,你需要的安装途径是 :

软件商店 > 应用搜索:nginx > 安装 > 编译安装 > 添加自定义模块
模块名称:nginx_rtmp_module
描述: nginx rtmp
参数:–add-module=/www/server/nginx-rtmp-module

之后进行安装即可,如果并不需要则可以直接极速安装
在安装完成后,按下图所示进行网站创建

website

域名栏填写你dns解析的地址即可,重中之重时php版本,切记选择纯静态
之后设置网站的反向代理,按下图所示填写,记得将ip地址换为你自己服务器的地址,发送域名就填你上面在域名栏里填的第一个域名

reverse

然后提交,之后便可以直接用你的域名访问你的博客了!

5. SSL的申请

你可以忍受你的链接是不安全的吗?我不管你怎么认为,至少我无法忍受!
unsafe
首先你要做的是暂时停止你的反向代理,前往网站->设置->反向代理->状态,点击运行中,随后再前往SSL侧栏,选择Let’s Encrypt栏并按下图操作

SSL

不出意外的话,稍等一下就可以申请成功。这时你再打开你的反向代理,用域名访问你的博客,你会发现左上角地址栏不会再是红的了,你已经是个有安全认证的博客辣!

恭喜你!教程就到此结束了,你也拥有了你自己的Halo博客!至于博客的风格设置,详细配置,就先按下不表,自己先探索探索吧!

后记

Halo博客的建站方式我前前后后总共试了三种,在22年十月份左右时,我是参考这篇文章进行的安装,奈何centos不知道是有小bug还是怎么的,终究是卡在了为普通用户申请管理员权限并在家目录下创建目录这一步,这使我苦恼了相当长一段时间。

后来在官方文档的帮助下,我想试一下docker的安装方法,并在阅读网上的教程并融入自己理解后,写下了这篇文章,以期能够让更多人少走弯路。我个人花了相当长一部分时间研究这方面的内容,自认为已经掌握差不多了,但每当遇到各种小困难,还是不得不折腰,还是得感叹自己技术的不到位。

曾经的服务器我是在10月份搭建完成的,但是临近月末,服务器的速度和质量我并不是很满意,当我想换一台服务器将我这些博客数据搬迁时,我却手贱把曾经的博客数据全删啦!!!!(真是够贱的)
我的备份是mysql数据库的备份,里面还是有博客文章的相关数据,但是我还是不太会用,所以并没有恢复,而是又建了一次站。但这次的建站却怎么都不顺利,老方法并不管用,在反复琢磨后才用本文方法建好了,着实是酣战了一番。

题外话:Halo的博客我本是在沉迷ba时想搜索学生的光环却无意中搜出来的,我原先用的是wp博客,但是wp没有内置H2数据库,也没有其他种种Halo能带给我的便利,Halo博客虽然小众,但着实是一个好博客,尤其我看中了它的内置数据库,可以让我上传图片,视频以及文件在服务器上而不用单搞一个外挂图床,实在是非常便利。

ba fin