我的自建博客之旅04之Halo
Halo是我无意间发现的一款博客框架,如果你讨厌Hexo,Vuepress等静态框架本地编辑,构建部署等方式,如果你想要一款一次搭建,前台是博客,后台是文章维护,并且支持各种定制化折腾的博客框架,可能Halo
会比较适合你。
因为我个人还是比较偏技术,所以最后选用了Hexo,为了省点服务器资源,这款博客服务也就停了,没法预览了,就截取几张图预览预览。
搭建
依旧采用docker-compose模式搭建,Halo由服务和数据库构成,我数据库依旧依据自己的习惯采用了pg:
- 编写
docker-compose.yml
文件:
1 | version: "3" |
- 启动服务
在你配置docker-compose.yml
的目录里面执行:
1 | docker-compose up -d # 启动应用,默认读取名为docker-compose.yml或docker-compose.yaml的文件 |
1 | docker-compose ps # 命令查看已经启动的容器。 |
也可以利用Portainer
界面化docker管理平台来部署,它是一个相当于把我们针对docker或者docker compose的命令全部界面化的项目,有兴趣的可以看看我的docker服务系列文章01.Portainer-容器界面化管理工具
。
- 初始化
假设我们服务的端口映射时用的8090。我们启动Halo后,在首次通过ip:8090访问网站的时候会自动跳转到初始化页面,你需要完成这个步骤才能正常使用 Halo。
表单项说明:
- 站点名称:网站的名称,将会显示在浏览器标签页上。
- 邮箱:初始管理员的邮箱地址。
- 用户名:初始管理员的用户名。
- 密码:初始管理员的密码。
- 确认密码:重复输入密码以验证是否匹配。
输入完成之后点击初始化按钮即可完成初始化,初始化完成之后,将会跳转到登录页面,输入刚才设置的用户名和密码即可登录。
博客访问地址:IP:8090
博客后台访问地址:IP:8090/console
注意:
- 大家上面脚本里面可以看到我数据库和halo服务镜像都用的固定版本,halo是官方要求的,因为他们按照版本发布新版。数据库是因为我之前使用latest标签的镜像,有一次因为某个服务升级了,导致halo无法通过数据库健康检测,所以建议数据库独立且指定版本。
- 端口这一块,如果自己是阿里云腾讯云等等,问题不大,不管自己设置的映射是80还是8090,策略组放行即可。如果家庭宽带,首先得有外网ip,然后DMZ主机或者端口映射,如果家庭宽带不是专线,无法使用80,443等几个端口。
使用
建议先安装应用市场插件[2.10版本之前]
此条针对2.10版本之前的,2.10版本后内置了。
以前老版本插件需要每次去官网找插件,然后安装,现在有人开发了市场插件,相当于将官网插件市场移植到了自己定位博客服务里面。
应用市场插件:https://www.halo.run/store/apps/app-VYJbF
后台管理
访问:IP:8090/console
,输入初始化的管理员账号密码进入后台。
后台是我们整个博客的后台管理系统。
文章
我们博客的核心,包括文章的新增,编辑以及删除,发布等等,还有文章标签的管理,分类的管理全部在这。
这边需要注意,默认编辑器是富文本编辑器,不支持Markdown,需要安装插件,我用的插件有ByteMD
以及Vditor Markdown
。
页面
博客内的一些单页面,例如关于,音乐,友情链接等等页面,如果主题支持,需要自己构建页面。
评论
博客自带评论框架插件的审核管理功能。
附件
资源管理功能,例如图片,视频等等。
瞬间
类似于博客通知或者每日心情,需要安装瞬间插件,并且主题要支持。
链接
一些友情链接等等第三方链接地址配置,有些主题功能需要。
主题
自己可以安装多款主题,这边就是主题的管理,可以针对主题进行配置,删除,修改,调整,预览等等。默认主题是Earth,我自己使用的是Hao。
菜单
菜单配置,一般主题内可能会有多种支持,例如Hao主题支持设置footer菜单。
插件
插件管理界面,可以开启关闭插件。
用户
用户管理。
设置
网站基本设置,例如站点名称,logo等等。还有文章,seo,用户,评论,通知等等设置。
概览
系统概览信息,版本,时间,环境信息等等。
备份
网站数据备份等等。
应用市场
1.10版本后边内置的应用市场,可以直接进入去安装插件和主题。
hao主题
这一块可配置项太多了,还是大家自己边预览边摸索吧,这是一个细活。
我们可以点击右上角主题预览,然后再预览界面点击配置即可开启桌面,手机,平板预览配置。