本文来自云服务器ECS开发实践征文活动用户投稿,从阿里云服务器购买(试用)到搭建一个属于开发者自己的开源博客系统,带你从0到1了解认识阿里云ECS搭建博客网站。步骤详细,可操作性强,教您玩转ECS。全文大约3000字。已获得作者(昵称乌龟哥哥)授权发布。
引言
网上有很多关于WordPress的建站教程,但是关于Halo却很少。Halo是一款使用Java开发的开源博客系统,致力于打造最好的Java博客系统,知名度没有大名鼎鼎的WordPress高,但是一款非常简洁清新的开源建站系统,所有代码都储存在github网站,方便开发者进行二次开发和修改。
阿里云官网的ECS产品介绍描述如下:“云服务器ECS免去了您采购IT硬件的前期准备,让您像使用水、电、天然气等公共资源一样便捷、高效地使用服务器,实现计算资源的即开即用和弹性伸缩。”在我看来,云服务器ECS就是一台永不关机的主机电脑,这台主机也许并不需要屏幕,因此我们可以通过远程登录控制。
本文教您使用云服务器ECS快速搭建Halo博客。
搭建博客前的准备
我们搭建网站要准备的包括:
• 阿里云账号注册及实名认证
• 购买云服务器ECS
• 购买已经备案的域名(可选)
• 购买阿里云对象存储OSS(可选)
阿里云账号注册及实名认证
在阿里云官网导航栏右上角单击立即注册,完成账号注册。
单击我的阿里云,在用户中心完成实名认证。
购买云服务器ECS
阿里云产品开发者试用专区针对实名认证的用户提供了多种免费试用产品,减少开发者的资金投入,如果在试用期内对产品满意则可以继续付费使用。
在试用专区找到云服务器共享型s6,点击0元试用。
按照提示选择配置
选择距离访客实际物理位置最近的区域可以降低延迟。
操作系统选择centos 7.9 64位。
其他配置默认即可,单击立即购买。
同意服务协议,点击去支付,购买成功。
等待3-5分钟,进入控制台可以查看购买的ECS服务器。
购买已经备案的域名(可选)
域名购买后需要进行备案才能正常访问,备案大概需要5个工作日,需要提前安排时间。
在阿里云域名购买地址选择你想要的域名,加入清单。
填写模板信息,完善身份证件等资料。
待审核信息通过后可以进行域名购买,选择域名持有者为个人,点击立即购买。
购买阿里云对象存储OSS(可选)
进入阿里云对象存储试用中心,找到存储容量单位包,点击零元试用。
在配置详情页选好,点击立即购买。
确认参数后点击去支付。
在对象存储控制台可以看到详细信息。
搭建Halo博客
准备好需要的资源后,我们需要进行远程登录域名;在本地安装好finalshell终端登录软件后进行登录
步骤一、Finalshell下载安装
FinalShell是一体化的服务器,网络管理软件,不仅是ssh客户端,还是功能强大的开发,运维工具,充分满足开发,运维需求。
特色功能:云端同步,免费海外服务器远程桌面加速,ssh加速,本地化命令输入框,支持自动补全,命令历史,自定义命令参数等。
百度搜索“Finalshell官网”,第一个就是;进入后,点击下载,如下图。保存在本地,下载安装完成后打开主界面。
Finalshell常用快捷键如下:
终端:
alt :命令历史
双击ctrl :切换到命令输入框
命令输入框:
alt :命令历史
tab :补全
双击ctrl :切换到终端
列表窗口:
backspace :上一级目录
alt/tab/Esc :关闭窗口
上下箭头:选择行
步骤二、阿里云服务器远程登录
打开阿里云云服务器控制台,点击进入详情页,复制公网IP地址
打开Finalshell,点击文件夹图标
点击连接,选择SSH连接。
下图中的参数说明如下:
名称:自定义
主机:阿里云服务器的IP地址
用户名:阿里云服务器的登录的用户名称
点击确认后双击。
登录成功就可以进行命令控制了,还可以进行编辑文件和上传下载文件;左侧可以查看内存信息。
步骤三、部署软件环境
本次教程以centos为例
在控制台输入以下命令,安装Java:
sudo yum install java-11-openjdk -y
检查Java版本:
java -version
如果输出以下类似内容即代表成功。
创建新的系统用户,以用户名halo为例(名字可自定义)
useradd -m halo
授予halo 管理员权限:
usermod -aG wheel halo
为 halo 用户创建密码:
passwd halo
登录halo账号:
su - halo
创建存放运行包的目录,这里以 ~/app 为例
mkdir ~/app && cd ~/app
下载运行包:
wget https://dl.halo.run/release/halo-1.4.17.jar -O halo.jar
创建工作目录:
mkdir ~/.halo && cd ~/.halo
下载示例配置文件到工作目录:
wget https://dl.halo.run/config/application-template.yaml -O ./application.yaml
运行博客:
cd ~/app && java -jar halo.jar
halo博客默认用户名为:admin
默认密码:123456
浏览器中打开“http://ip: 端口号” ,即可看到安装引导界面。
Halo 的配置文件名为 application.yaml,其必须位于工作目录 ~/.halo 下;Halo 会读取该目录下的配置文件进行加载;此次设置的登录端口号为1234。
步骤四、halo博客网站信息配置
在安装向导中填写基本信息,点击安装。
输入用户名及密码,登录。登录成功后可以看到halo的博客后台基本信息。
我们再看一下博客主页,打开网址:http://ip:端口/
(IP即上面提到的公网IP,端口号是单独设置的数字)
可以看到页面非常简单,但是已经可以证明我们安装成。
下面我们进入后台对博客进行一下美化,并测试发表文章功能。
点击启用,进行配置,设置基本信息。
设置好后回到博客首页,可以看到文章已经美化了很多。
下面进行文章编辑测试。
回到博客后台控制台仪表盘,单击写文章。
文章编辑采用经典的markdown格式,可以进行实时预览。
进行基本信息设置完善,发布文章。
查看文章如下图所示,可以看到非常简约美观。
当然halo博客也支持导入导出博客,方便文章迁移,还可以自定义界面。
步骤五、绑定阿里云OSS对象存储
在目前环境下,我们博客的文件存储都是放在服务器主机的内存中,当我们长久使用服务器时,内存就会不够用,我们可以使用阿里云的对象存储,将文件单独存储,同时可以减小带宽压力,加快访问速度。
打开halo博客后台,进入附件设置,选择存储位置为阿里云。
进入阿里云对象存储控制台,打开bucket列表。
点击查看目标bucket详情,将读写权限设置为公有。
在控制台/阿里云账号界面,点击右上角头像,在AccessKey管理页面创建及获取Access key。
将所需要的信息填写到博客后台对应位置。
配置完成后进行图片上传检测,上传一张图片后去阿里云控制台进行查看。
在控制台可以看到我们上传的图片。
以后我们编辑博客的文件就会自动上传到对象存储OSS,而不会保存在服务器内存硬盘中。
步骤六、设置halo自启动
登录Finalshell控制终端,退出 halo 账户,登录到 root 账户;下载 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。
重新加载 systemd:
systemctl daemon-reload
运行服务:
systemctl start halo
在系统启动时启动服务:
systemctl enable halo
查看服务日志检查启动状态:
journalctl -n 20 -u halo
至此,阿里云ECS搭建halo博客部署完毕,后续大家可以按照自己喜好进行DIY部署。
可能遇到的问题Q&A
halo访问IP+端口无法访问
可能是服务没有打开相应端口;需要进入阿里云ECS控制台,添加安全组,打开相应端口。
对象存储上传失败
在阿里云对象存储复制密钥和密码到halo后台可能会有多余的空格,需要手动删掉,否则会导致图片上传失败。
费用问题
除新用户的部分免费试用活动外,阿里云的域名,ECS服务器,对象存储,这些都是需要收费的,大家需要根据自己的情况合理进行资源的选购,同样防止被其他人恶意攻击。
总结
本文通过大概3000字将halo博客环境部署在阿里云服务器,为大家详细的介绍了部署流程和服务器等资源的购买配置,希望大家可以通过此案例了解服务器相关资源配置流程,借助阿里云强大的云上资源发挥更大的价值。