一次偶然的机会,翻阅张洪大佬的博客主页时了解到halo这个开源建站工具,点开了解了一下,确实不错,相比之下,其支持的免费主题还真不少,当然也有一些收费的,不过免费的对于做blog而言足够了。我尝试它的原因有两点:

  1. 其支持我一直使用的张洪大佬魔改的butterfly主题,当然此主题魔改至今,已经全然没有了butterfly的影子。此主题在halo中称作hao主题。
  2. halo较于hexo,有强大的后台管理功能,方便写作以及博客的管理。

关于halo

可插拔架构

Halo 采用可插拔架构,功能模块之间耦合度低、灵活性提高。支持用户按需安装、卸载插件,操作便捷。同时提供插件开发接口以确保较高扩展性和可维护性。

  • 支持在运行时安装和卸载插件
  • 更加方便地集成三方平台
  • 统一的可配置设置表单
  • 支持自定义模型,自动生成 RESTful API

功能丰富的主题机制

Halo 提供完整的主题模板机制,用于构建前台界面。这意味着用户可以根据自己的喜好选择不同类型的主题模板来定制化自己的站点外观。

  • 动态切换主题模板
  • 支持实时编辑和预览效果
  • 多语言支持
  • 与插件配合实现更多功能

编辑器

Halo 的富文本编辑器提供了方便丰富的功能,包括添加标题、段落、引用、列表、代码块等元素,并支持设置样式属性、上传图片、插入视频等功能。这些工具让你的文章创作更加便捷和生动。

  • 完备的富文本格式支持
  • 支持拖拽和粘贴图片上传
  • 支持通过插件扩展编辑器

使用Docker Compose部署halo

  • 在系统任意位置创建一个文件夹,此文档以 ~/halo 为例。
1
mkdir ~/halo && cd ~/halo

注意:后续操作中,Halo 产生的所有数据都会保存在这个目录,请妥善保存。

  • 参考文档创建 docker-compose.yaml
  • 启动 Halo 服务
1
docker-compose up -d
  • 用浏览器访问 /console 即可进入 Halo 管理页面,首次启动会进入初始化页面。