前言

本教程基于绿联的NAS设备DX4600 Prodocker功能进行搭建,采用Halo + MySQL实例作为演示。

简介

Halo [ˈheɪloʊ] 是一个简洁,现代,快速且非常灵活的建站工具,它是由一位中国开发者制作并开源,使用Java语言开发。Halo主要用于搭建博客网站,它开箱即用,同时又提供了丰富的配置选项,可以满足各种定制化需求。

主要特点如下:

  • 简洁现代:Halo的界面设计非常简洁、现代,给人一种非常舒适的使用体验。同时,其代码结构也非常清晰,方便开发者进行定制和开发。

  • 强大的编辑器:Halo提供了Markdown和富文本两种编辑器,可以满足不同用户的需求。同时,其Markdown编辑器支持实时预览,使写作更加方便。

  • 多主题支持:Halo支持多种主题,用户可以根据自己的喜好选择。同时,Halo还支持自定义主题,用户可以自由创造。

  • 自带统计功能:Halo内置了访问量统计功能,用户可以清晰看到自己的网站访问情况。

  • 多平台发布:Halo提供了多种发布方式,支持Docker、JAR包、一键部署到云服务器等。

  • 开源免费:Halo是完全开源的,用户可以免费使用,同时也可以参与到Halo的开发中来。

总的来说,Halo是一个非常优秀的建站工具,无论是对于个人博客,还是对于小型企业网站,Halo都是一个非常好的选择。

部署

  1. 在“本地镜像”中添加halohub/halo:2.11.1​​镜像。

    目前 Halo 2 并未更新 Docker 的 latest 标签镜像,主要因为 Halo 2 不兼容 1.x 版本,因此我们需要在“本地镜像”中添加固定版本的标签镜像。

    ​​

  2. 在“镜像管理”中的“本地镜像”找到刚添加的镜像halohub/halo:2.11.1​,点击“创建容器”。

  3. 勾选“创建后启动容器”,然后直接点击“下一步”。

    ​​

  4. 将“基础设置”中的重启策略配置成“容器退出时总是重启容器”

  5. 在“命令”中输入以下命令

    如忽略此步骤,则默认 H2 数据库,在生产环境我们不推荐使用 H2 数据库,这可能因为操作不当导致数据文件损坏。

    参数名

    描述

    spring.r2dbc.url​​

    数据库连接地址,请根据自己数据库的实际地址进行修改。

    spring.r2dbc.username​​

    数据库用户名

    spring.r2dbc.password​​

    数据库密码,请根据自己数据库的实际密码进行修改。

    spring.sql.init.platform​​

    数据库平台名称

    --spring.r2dbc.url=r2dbc:pool:mysql://{host}:{port}/{database}
    --spring.r2dbc.username=root
    --spring.r2dbc.password={password}
    --spring.sql.init.platform=mysql
    

    ​​

  6. 在NAS中创建一个目录,用于保存halo的配置和我们的数据,在“存储空间”内与容器的/root/.halo2​​装载路径建立映射,并配置为“读写”类型。

    /root/.halo2​​为固定路径,不可修改!

    ​​

  7. 在“端口设置”中进行端口配置,“本地端口”指的是我们实际访问时要用到的端口,可以根据自己喜好进行配置,只要不与其他服务的端口有冲突就行。

    此处演示时使用的“本地端口”是“8090”端口,如不清楚端口是否被占用则默认“自动”即可。

    ​​

  8. 在“环境”中,点击“添加”,增加一行,名称:MYSQL_ROOT_PASSWORD​,值:{password},然后直接点击“下一步”。

    此处演示时使用的密码是“o#DwN&JSa56”,需要根据自己实际使用情况进行修改。

    此处的密码需要与前面“命令”中spring.r2dbc.password​参数的值保持一致!

  9. 在浏览器中输入{IP}:{Port}​,即可访问。

    ​​​​

相关链接