Bucket 设置
权限
权限控制
-> 读写权限
-> 公共读
传输加速
Bucket 配置
-> 传输加速
-> 开启
域名
Bucket 配置
-> 域名管理
-> 绑定域名
静态页面
数据管理
-> 静态页面
,设置如下:
ZIP 包解压
数据处理
-> ZIP 包解压
,设置如下:
防盗链
数据安全
-> 防盗链
创建 Accesskey
头像
-> Accesskey管理
-> 使用子用户Accesskey
-> 创建用户
-> 添加 AliyunOSSFullAccess 权限
用户创建成功后会生成
ID
和SECRET
,记得复制或下载CSV文件
否则要重新创建
添加 Repository Secrets
打开仓库主页,Setting
-> Secrets
-> Actions
,添加 scret
GitHub Action 配置
$ mkdir -p .github/workflows/
$ touch .github/workflows/gh-pages.yml
编辑 gh-pages.yml
:
name: github pages
on:
push:
branches:
- master
paths-ignore:
- 'README.md'
- '.gitignore'
- '.gitmodules'
pull_request:
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
submodules: true
fetch-depth: 0
# 设置 hugo
- name: Setup Hugo
uses: peaceiris/actions-hugo@v2
with:
hugo-version: 'latest'
extended: true
# 构建静态页面
- name: Build Blog
run: hugo --minify
# 打包 zip
- name: Archive Blog.zip
uses: vimtor/action-zip@v1.1
with:
files: ./public
dest: Blog.zip
# 部署 github page
- name: Deploy To Github Pages
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./public
# 配置阿里 ossutil 工具
- name: Setup AliyunOSS
uses: manyuanrong/setup-ossutil@v2.0
with:
endpoint: "oss-accelerate.aliyuncs.com"
access-key-id: ${{ secrets.ID }}
access-key-secret: ${{ secrets.SECRET }}
# 删除 oss 旧页面
- name: Remove old files of OSS
run: ossutil rm -rf oss://kingtuo123 --include "*"
# 上传 zip 至 oss
- name: Upload Blog.zip file to OSS
run: ossutil cp -f Blog.zip oss://kingtuo123/
# 等待 zip 解压完毕
- name: Sleep for unzip
uses: juliangruber/sleep-action@v2.0.0
with:
time: 50s
# 删除刚上传的 zip
- name: Remove Blog.zip from OSS
run: ossutil rm -f oss://kingtuo123/Blog.zip
GitHub Pages 设置(可选)
如果不需要 github page,注释掉 gh-pages.yml 中对应的部分
在仓库主页 Settings
-> Pages
中,修改分支为 gh-pages
OSS 流量报警
主要为防止 OSS 流量盗刷,云监控
-> 报警服务
-> 报警规则
-> 创建报警规则
OSS 不支持流量超阈值停止,参考此文:阿里云对象存储 OSS 限流超过阈值自动关闭