如何在创建GitHub Release时触发镜像构建推送的Workflow?
如何将GitHub Action的触发条件设置为创建Release时
完全可以把GitHub Action的触发条件设置为创建仓库Release的时候,具体配置方法如下:
核心配置:指定Release触发事件
在Workflow的on字段中配置release事件,并指定触发类型为created,这样每当你在GitHub仓库创建新的Release(包括正式版和预发布版)时,Action就会自动执行。
完整Workflow示例
name: 构建并推送Docker镜像到Docker Hub on: release: types: [created] jobs: build-and-push: runs-on: ubuntu-latest steps: - name: 拉取仓库代码 uses: actions/checkout@v4 - name: 登录Docker Hub uses: docker/login-action@v3 with: username: ${{ secrets.DOCKER_HUB_USERNAME }} password: ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }} - name: 构建并推送镜像 uses: docker/build-push-action@v5 with: context: . push: true tags: | 你的Docker Hub用户名/镜像名:${{ github.event.release.tag_name }} 你的Docker Hub用户名/镜像名:latest
关键细节说明
- 如果只想在发布正式Release时触发(排除预发布版),可以把
types: [created]改成types: [published]。 - 使用
${{ github.event.release.tag_name }}作为镜像标签,能让镜像版本和Release标签一一对应,便于后续版本追溯。 - 需提前在GitHub仓库的「Settings → Secrets and variables → Actions」中配置
DOCKER_HUB_USERNAME(你的Docker Hub用户名)和DOCKER_HUB_ACCESS_TOKEN(Docker Hub生成的访问令牌)。
内容的提问来源于stack exchange,提问作者Daniel Walker
相关产品推荐
相关产品推荐

