1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- # This is a basic workflow to help you get started with Actions
- name: build docker image
- # Controls when the action will run.
- on:
- push:
- branches:
- - main
- release:
- types: [created,published] # 表示在创建新的 Release 时触发
- # Allows you to run this workflow manually from the Actions tab
- # 可以手动触发
- workflow_dispatch:
- inputs:
- logLevel:
- description: 'Log level'
- required: true
- default: 'warning'
- tags:
- description: 'Test scenario tags'
- jobs:
- buildx:
- runs-on: ubuntu-latest
- steps:
- - name: Checkout
- uses: actions/checkout@v2
- - name: Inject slug/short variables
- uses: rlespinasse/github-slug-action@v4
- - name: Set up QEMU
- uses: docker/setup-qemu-action@v1
- - name: Set up Docker Buildx
- id: buildx
- uses: docker/setup-buildx-action@v1
- - name: Available platforms
- run: echo ${{ steps.buildx.outputs.platforms }}
- - name: Login to DockerHub
- uses: docker/login-action@v1
- with:
- username: ${{ secrets.DOCKERHUB_USERNAME }}
- password: ${{ secrets.DOCKERHUB_TOKEN }}
- - name: Build and push
- uses: docker/build-push-action@v2
- with:
- context: .
- file: ./Dockerfile
- # 所需要的体系结构,可以在 Available platforms 步骤中获取所有的可用架构
- platforms: linux/amd64,linux/arm64/v8
- # 镜像推送时间
- push: ${{ github.event_name != 'pull_request' }}
- # 给清单打上多个标签
- tags: |
- ${{ secrets.DOCKERHUB_USERNAME }}/${{ env.GITHUB_REPOSITORY_NAME_PART }}:${{ env.GITHUB_REF_NAME }}
- ${{ secrets.DOCKERHUB_USERNAME }}/${{ env.GITHUB_REPOSITORY_NAME_PART }}:latest
|