Halo 是一款适合新手的建站工具,功能聚焦于个人博客搭建,提供傻瓜式编辑器,支持拖拽排版、代码高亮和主题切换,还有丰富的插件可以扩展功能,比如添加评论系统、优化 SEO 等。它适合学生、内容创作者、想拥有个人展示平台的人,优点是操作简单,不用懂代码,几分钟就能完成基础搭建,学习成本远低于传统建站工具。
使用 Halo 时,刚开始建议选一个简洁的主题,太复杂的主题可能会增加加载时间;插件按需安装就好,比如只需要展示文章的话,没必要装太多功能插件,避免后台卡顿。另外,第一次发布文章后,最好预览一下不同设备的显示效果,确保排版没问题。
但 Halo 在局域网内使用时,局限性很明显。比如在宿舍搭建的个人博客,同学在外网打不开链接;和异地朋友协作改博客主题,对方看不到实时修改效果,只能靠传截图沟通;想把写好的文章分享给远方的家人,也因为不在同一网络而无法访问。
而 Halo 与 cpolar 结合后,这些不便就消失了。cpolar 能把本地的 Halo 站点映射到公网,生成一个可在外网访问的地址。这样一来,异地的朋友能直接点开链接看博客内容,团队协作时改完主题对方立马能预览;哪怕在外面,用手机也能登录后台修改文章,分享起来特别方便,还不用额外购买服务器。
黄金组合最佳拍档的安装教程如下,省钱、省时又省力的效率工具还不快去安装😊
本篇文章介绍如何在CentOS下使用Docker部署开源建站工具Halo,并结合cpolar内网穿透工具实现个人博客的公网访问。
1. Docker部署Halo
1.1 检查Docker版本
**本地环境操作系统:**CentOS 7 安装Docker
如果未安装Docker可参考:
安装软件包(提供实用程序)并设置存储库
$sudoyuminstall-y yum-utils $sudoyum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo安装Docker引擎
sudoyuminstalldocker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin启动Docker
sudo systemctl start docker通过运行映像来验证 Docker 引擎安装是否成功
sudodockerrun hello-world
已安装Docker步骤:
- 启动Docker:
systemctl startdocker- 检查docker版本
docker-v- **检查docker compose版本:**确保2.0以上版本
dockercompose version- **下载Halo镜像:**在docker hub下载Halo-V2.10版本镜像
dockerpull halohub/halo:2.101.2 在Docker中部署Halo
- 创建挂载目录
mkdir-p /data/halo&&cd/data/halo- 创建Halo容器:
Halo 2与1.x 版本不兼容;
此命令默认使用自带的 H2 Database 数据库,另外可以额外单独使用Mysql数据库进行连接。
dockerrun -it -d --name halo -p8090:8090 -v /data/halo/.halo2:/root/.halo2 halohub/halo:2.10- 查看halo容器状态:检查halo容器状态,确保halo容器正常启动
dockerps- 检查halo容器日志:检查halo容器运行日志,确保halo服务正常启动。
dockerlogs halo- 查看本地IP地址
ifconfig- 进入Halo初始化页面
访问地址:http://192.168.149.142:8090/console/setup,将IP替换为自己服务器IP地址。
**站点名称:**myweb
**邮箱:**admin@qq.com
**用户名:**admin
**密码:**自定义
点击初始化即可
- **登录Halo:**输入账号和密码,登录halo,进入到仪表盘界面
接下来举个例子我们创作一篇文章,在Halo后台管理页面,文章模块,点击“新建”
编辑完文章后,点击发布,将文章进行发布,在文章列表中即可看到发布过的文章
接下来本地浏览器访问http://192.168.149.142:8090/,本地服务器IP:8089,看到halo前台首页已经成功显示发布文章
我们成功在本地部署了Halo,通过访问挂载的8089端口即可看到Halo首页界面,并创作了第一篇文章,如果我们想把创作好的个人博客发布至公网分享给身边人点击查看,那么就需要借助cpolar内网穿透工具了,接下来我们安装cpolar内网穿透工具,实现无公网环境远程访问!
2. Linux安装Cpolar
2.1 打开服务器防火墙
启动防火墙
systemctl start firewalld查看防火墙状态
systemctl status firewalldcentos7 防火墙添加端口:【单个】
firewall-cmd --zone=public --add-port=9200/tcp --permanent重新载入
firewall-cmd --reload查看
firewall-cmd --zone=public --list-ports2.2 安装cpolar内网穿透
上面在本地Docker中成功部署了Halo,并局域网访问成功,下面我们在Linux安装Cpolar内网穿透工具,通过Cpolar 转发本地端口映射的http公网地址,我们可以很容易实现远程访问,而无需自己注册域名购买云服务器.下面是安装cpolar步骤
cpolar官网地址: https://www.cpolar.com
- 使用一键脚本安装命令
curl-L https://www.cpolar.com/static/downloads/install-release-cpolar.sh|sudobash- 向系统添加服务
sudosystemctlenablecpolar- 启动cpolar服务
sudosystemctl start cpolarcpolar安装成功后,在外部浏览器上访问Linux 的9200端口 即:【http://局域网ip:9200】,使用cpolar账号登录(如没有账号,可以点击下面免费注册),登录后即可看到cpolar web 配置界面,结下来在web 管理界面配置即可
3. 配置Halo个人博客公网地址
点击左侧仪表盘的隧道管理——创建隧道,创建一个Halo的公网http地址隧道!
- 隧道名称:可自定义命名,注意不要与已有的隧道名称重复
- 协议:选择http
- 本地地址:8090 (本地访问的地址)
- 域名类型:免费选择随机域名
- 地区:选择China
点击创建
隧道创建成功后,点击左侧的状态——在线隧道列表,查看所生成的公网访问地址,有两种访问方式,一种是http 和https
使用上面的Cpolar https公网地址,在任意设备的浏览器进行访问,即可成功看到Halo首页界面,这样一个公网地址且可以远程访问就创建好了,使用了cpolar的公网域名,无需自己购买云服务器,即可发布到公网进行远程访问!
小结
如果我们需要把自己的个人博客长期发布至公网,分享给别人查看,由于刚才创建的是随机的地址,24小时会发生变化。另外它的网址是由随机字符生成,不容易记忆。如果想把域名变成固定的二级子域名,并且不想每次都重新创建隧道,可以选择创建一个固定的http地址来解决这个问题。
4. 固定Halo公网地址
我们接下来为其配置固定的HTTP端口地址,该地址不会变化,方便分享给别人长期查看你的博客,而无需每天重复修改服务器地址。
配置固定http端口地址需要将cpolar升级到专业版套餐或以上。
登录cpolar官网,点击左侧的预留,选择保留二级子域名,设置一个二级子域名名称,点击保留,保留成功后复制保留的二级子域名名称
保留成功后复制保留成功的二级子域名的名称
返回登录Cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道,点击右侧的编辑
修改隧道信息,将保留成功的二级子域名配置到隧道中
- 域名类型:选择二级子域名
- Sub Domain:填写保留成功的二级子域名
点击更新(注意,点击一次更新即可,不需要重复提交)
更新完成后,打开在线隧道列表,此时可以看到公网地址已经发生变化,地址名称也变成了固定的二级子域名名称的域名
最后,我们使用固定的公网https地址访问,可以看到访问成功,这样一个固定且永久不变的公网地址就设置好了,随时随地都可以把个人博客分享给其他人了!
Halo 降低了建站的门槛,cpolar 打破了访问的界限。对于想拥有个人博客又怕麻烦的人来说,这样的组合很实用,让内容分享更轻松。
本篇文章知识点来源[cpolar官网][https://www.cpolar.com]
- cpolar博客:配置二级子域名: https://www.cpolar.com/blog/configure-the-secondary-subdomain-name
- cpolar博客:配置自定义域名: https://www.cpolar.com/blog/configure-your-own-domain-name
- cpolar博客:配置固定TCP端口地址: https://www.cpolar.com/blog/configure-fixed-tcp-port-address
- cpolar博客:配置固定FTP地址: https://www.cpolar.com/blog/configure-fixed-ftp-address