本文主要描述个人如何使用GitHub Actions生成静态网站自动发布到阿里OSS上并绑定个人域名访问的,分享一下踩坑经验,希望能对你有所帮助。
OSS中创建Bucket
这里注意如果域名没备案的话,可以选择境外地域的结点,下图以新加坡为例:
创建Bucket
修改OSS写读权限
img
获取AccessKey
img
使用的是阿里推荐的子用户**AccessKey,**可以配置权限
img
img
GitHub填入Accesskey ID和Secret
img
GitHub Actions编写
`name: deploy blog`
`on:`
`push:`
`schedule:`
`- cron: '30 20 * * *'`
`jobs:`
`build:`
`runs-on: ubuntu-latest`
`steps:`
`- uses: actions/checkout@v2`
`with:`
`submodules: 'recursive'`
`- uses: srt32/[email protected]`
`with:`
`args: git submodule update --init --recursive`
`- name: use Node.js 10.x`
`uses: actions/setup-node@v1`
`with:`
`node-version: 10.x`
`- name: npm i Hugo`
`uses: peaceiris/actions-hugo@v2`
`- name: Build`
`run: |`
`hugo --minify`
`#hugo --minify到ubuntu-latest是部署Hugo的,不用可以去掉`
`- name: setup aliyun oss`
`uses: manyuanrong/setup-ossutil@master`
`with:`
`endpoint: oss-ap-southeast-1.aliyuncs.com #修改为自己的Endpoint`
`access-key-id: ${{ secrets.OSS_KEY_ID }}`
`access-key-secret: ${{ secrets.OSS_KEY_SECRET }}`
`- name: cp aliyun oss`
`run: ossutil cp -rf public oss://zongtang/ #修改为自己的`
复制代码
注意代码中的注释内容
运行效果
img
img
解析域名
我是用的腾讯提供的域名服务,因为记录值不是IP地址,所以记录类型就选CNAME,记录值就填OSS概述中的域名,第一张图里标示了
img
测试访问
img
欢迎去我博客或微信公众号LiuJohntun看整个建站流程,目前已经简化操作直接在Forestry.io上编写markdown文章后预览无误后提交通过GitHub Actions自动部署到GitHubPages、 GiteePages、OSS对象存储
如若内容有不足之处,还望大家多提建议多多与我交流。
更多精彩可以关注我的博客或微信公众号LiuJohntun,记录并分享我的所见、所学、所想…