Fork me on Gitee

Hexo博客系列(三)-利用GitLab Pages发布Hexo v3.x个人博客

相关链接

前言

这里不多说Git作为版本控制系统的优势,Gitlab作为支持私有仓库的开源Git系统,另外开放了Pages的功能,可以实现个人静态博客的部署及访问。

本文仅将Hexo打包后的代码提交到Gitlab,并利用CI/CD发布到Gitlab Pages,实现可以通过 https://username.gitlab.io/projectname 或者 https://username.gitlab.io 可以访问博客的目的。

创建仓库

Gitlab支持project page和user page两种pages,只需要创建对应的仓库即可。
如果想通过https://username.gitlab.io/projectname 形式访问,需要创建projectname的仓库。

如果想通过https://username.gitlab.io ,需要创建username.gitlab.io的仓库

代码发布

修改站点配置文件,找到deploy配置,将type设置为git,并填写自己的repo地址,分支默认为master即可。

1
2
3
4
deploy:
type: git
repo: git@gitlab.com:java4candy/java4candy.gitlab.io.git
branch: master

执行hexo clean && hexo d -g,即可将发布后的代码提交到Gitlab。

Gitlab 配置CI/CD

新建文件方式:
在Gitlab中,根据.gitlab-ci.yml模板New file并上传。

上传文件方式:
选择Upload file,将本地的.gitlab-ci.yml文件上传到Gitlab。

文件内容:

1
2
3
4
5
6
7
8
9
10
11
12
13
# This file is a template, and might need editing before it works on your project.
# Full project: https://gitlab.com/pages/plain-html
pages:
stage: deploy
script:
- mkdir .public
- cp -r * .public
- mv .public public
artifacts:
paths:
- public
only:
- master

上传后,Gitlab会自动校验.gitlab-ci.yml文件语法,校验通过后,自动执行。
另外,在左边菜单CI/CD->Pipelines中能够查看Pipeline、对应的Jobs及脚本的执行情况。
如果需要定时发布,可以使用Schedules创建Cron定时器。

最后在在Settings->Pages查看正确的的访问路径。

通过https://username.gitlab.io/projectname 或者 https://username.gitlab.io 访问博客。

感谢您发财的小手,我们一起进步
TEC-CHEN 微信支付

微信支付

TEC-CHEN 支付宝

支付宝

TEC-CHEN 微信-赞赏码

微信-赞赏码

TEC-CHEN 公众号

公众号


-------------本文结束感谢您的阅读-------------
0%