Skip to content

Latest commit

 

History

History
81 lines (53 loc) · 2.82 KB

HELP.md

File metadata and controls

81 lines (53 loc) · 2.82 KB

本地环境搭建

部署 Halo2.0

使用 Docker 部署

参考相关文档,在本地部署 Halo2.0,主题目录在 ~/halo-next 下。

本地启动需要添加配置 -e SPRING_THYMELEAF_CACHE=FALSE 这样可以关闭缓存,就可以实时刷新主题了。

-e SPRING_PROFILES_ACTIVE=dev 则可以打开 swagger-ui。

访问地址:http://localhost:8090

后台地址:http://localhost:8090/console

文档地址:http://localhost:8090/swagger-ui.html

docker run \
  -it -d \
  --name halo-next \
  -p 8090:8090 \
  -v ~/halo-next:/root/halo-next \
  -e HALO_EXTERNAL_URL=http://localhost:8090/ \
  -e HALO_SECURITY_INITIALIZER_SUPERADMINPASSWORD=P@88w0rd \
  -e SPRING_THYMELEAF_CACHE=FALSE \
  -e SPRING_PROFILES_ACTIVE=dev \
  halohub/halo-dev:2.0.0-alpha.1 

windows 电脑下cmd无法识别 \ ,所以需要在wsl2窗口下执行

热部署

下载halo-theme-hao主题

方式一

压缩为 zip 包,然后在 halo console 控制台上传主题,此时可以在 halo 的主题路径下看到刚才上传的主题,名称为 theme-hao

halo 的主题路径:

  1. mac 默认在 ~/halo-next/theme
  2. windows 默认在 wsl2 中

img_1.png

img.png

可以通过 IDEA 或者 vscode 直接打开主题文件夹,进行操作开发,这里会实时生效。

windows系统推荐使用vscode打开,因为IDEA目前对于wsl2的支持并不好

方式二

  1. 直接在主题目录(~/halo-next/)下,执行 mkdir -p theme/theme-hao

    windows系统目录是在 wsl2 里面的 /home/用户/halo-next

  2. git pull 代码。此时打开 console 控制台是看不到这个主题的,(halo 后面会添加扫描主题功能)

    windows系统推荐使用ssh的方式连接github,然后再拉取代码

  3. 通过 http 接口,将 theme.yaml 的配置提交,接口可以参考 swagger-ui

    也可以直接通过swagger来执行对应的接口

  4. 可以参考 http/theme.http 内的脚本

如何动态更新配置

通过以上过程,在修改前端代码时,已经可以实时看到效果,但是当修改了 settings.yaml 配置后,发现在前端并不能直接通过 thymeleaf 获取到字段值,这里就需要调用接口修改 console 后台的配置。

参考 http/settings.http 文件

  1. 在 console 后台获取到 cookie
  2. 调用删除 settings 接口
  3. 将新的配置放在 yaml 转 json,然后调用 post 接口

参考主题

可以参考相关主题的用法

Halo 官方默认主题:https://github.com/halo-sigs/theme-default

Hexo-Butterfly 主题:https://github.com/jerryc127/hexo-theme-butterfly