在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
开源软件名称:Hexo OSS Deploy开源软件地址:https://gitee.com/gitee-go/hexo-oss-deploy开源软件介绍:《Gitee Go 持续交付之 Hexo 博客部署》
前言
在本实战案例中,我们将基于 环境准备本次实战基于
体验和搭建过程在本次实战中,你可以根据已有的文档和教程自己搭建 Hexo 站点,并结合 Gitee Go 发布部署 Hexo 到 对象存储,也可以按照以下步骤,通过 Fork 本仓库案例。快速体验 Gitee Go + Hexo 博客自动部署的便利。
Hexo 快速入门Hexo 的使用和调试 基于 Hexo 使用 Markdown 语法进行编写,支持常见的 Markdown 语法。 领取 Gitee Go 免费构建时长通过访问 Gitee Go 活动页面,选择相应需要领取时长的 个人/企业 并领取 500 分钟构建时长 配置 OSS 存储创建 OSS Bucket通过访问阿里云 OSS 控制台 https://oss.console.aliyun.com/ ,输入 Bucket 名称并选择一个地域,完成 OSS Bucket 创建。通过 OSS Region和Endpoint对照表 获得对应的 Bucket 静态页面设置访问对应 OSS Bucket,通过「基础设置」->「静态页面」将 OSS Bucket 配置成静态网站托管模式。默认首页和默认 404 页 设置为 绑定自定义域名
访问对应 OSS Bucket,通过「传输管理」->「域名管理」,输入博客站点的域名,此处以我的博客站点 normalcoder.com 为例,如果域名使用阿里云的域名解析服务,还可以直接勾选「自动添加 CNAME 记录」以完成自动添加 DNS 解析配置。 配置完成后,可以通过页面配置更多如
配置相关 RAM 账号与授权
通过访问阿里云 RAM 访问控制台 https://ram.console.aliyun.com/users ,创建并分配一个 RAM 帐号,获得对应的 AccessKey ID 和 AccessKey Sercret。 通过分配 回到 OSS Bucket,通过「权限管理」->「Bucket 授权策略」,将对应的 RAM 帐号添加到 Bucket 授权列表中,赋予「完全控制」权限。 配置环境变量访问并 Fork Hexo OSS Deploy 示例仓库,通过仓库「管理」—>「环境变量设置」,配置对应的环境变量,参考下表(此处变量信息为下文流水线配置使用,可以参考下文调整变量命名)。
开通 Gitee Go通过仓库导航「 回到仓库中提交任意一个文件。触发流水线。即可触发完成部署。部署效果预览如下: 流水线配置结构和字段说明本实战案例中,流水线配置文件存在于 ./workfolow/deploy.yml,具体内容和字段说明如下: # ========================================================# 基于 aliyun OSS / tencent COS 构建部署 Hexo 静态网站示例# 功能:通过 Node 编译构建 Hexo 项目并部署到 OSS / COS# ========================================================version: 1.0name: hexo-oss-deploy # 定义一个唯一 ID 标识为 hexo-oss-deploy ,名称为「 Hexo 部署(OSS) 」的流水线displayName: 'Hexo 部署(OSS)'triggers: # 流水线触发器配置 push: # 设置 master 分支 在产生代码 push 时精确触发(precise)构建 branches: precise: - masterstages: # 构建阶段配置 - stage: # 定义一个 ID 标识为 deploy-stage ,名为「 Deploy Stage 」的阶段 name: deploy-stage displayName: 'Deploy Stage' strategy: naturally # 阶段触发策略,naturally表示自然失败,fast表示快速失败 steps: # 构建步骤配置 - step: build@nodejs # 采用 npm 编译环境 name: deploy-step # 定义一个 ID 标识为 deploy-step ,名为「 Deploy Step 」的阶段 displayName: 'Deploy Step' nodeVersion: 14.16.0 # 指定 node 环境版本为 14.16.0 commands: | # 安装依赖,配置相关主题、部署参数并发布部署 set -e node -v npm -v npm install npm run config url $SITE npm run config theme $THEME npm run config deploy.cloud $CLOUD npm run config deploy.bucket $BUCKET npm run config deploy.region $REGION npm run config deploy.secretId $SECRET_ID npm run config deploy.secretKey $SECRET_KEY npm run clean npm run deploy |
请发表评论