@@ -2,29 +2,15 @@ name: Docker Build and Push
22
33on :
44 push :
5- branches : [ "main", "master" ]
6- # 当你打标签(比如发布 v1.0.0)时也会触发
5+ branches : [ "main" ]
76 tags : [ 'v*.*.*' ]
8- pull_request :
9- branches : [ "main", "master" ]
10-
11- env :
12- # 使用 GitHub 自带的镜像仓库,完全不需要注册第三方账号
13- REGISTRY : ghcr.io
14- # 自动读取你的 GitHub 用户名和仓库名作为镜像名
15- IMAGE_NAME : ${{ github.repository }}
167
178jobs :
189 build-and-push :
1910 runs-on : ubuntu-latest
20-
21- # 这一步非常关键:赋予 GitHub Actions 推送镜像的权限
22- permissions :
23- contents : read
24- packages : write
2511
2612 steps :
27- - name : Checkout repository
13+ - name : Checkout
2814 uses : actions/checkout@v4
2915
3016 - name : Set up QEMU
@@ -33,34 +19,28 @@ jobs:
3319 - name : Set up Docker Buildx
3420 uses : docker/setup-buildx-action@v3
3521
36- # 使用 GitHub 自带的 Token 自动登录,无需你手动配置任何密码
37- - name : Log in to the Container registry
38- if : github.event_name != 'pull_request'
22+ - name : Log in to Docker Hub
3923 uses : docker/login-action@v3
4024 with :
41- registry : ${{ env.REGISTRY }}
42- username : ${{ github.actor }}
43- password : ${{ secrets.GITHUB_TOKEN }}
25+ username : ${{ secrets.DOCKERHUB_USERNAME }}
26+ password : ${{ secrets.DOCKERHUB_TOKEN }}
4427
45- # 自动生成镜像标签 (例如 latest, v1.0.0)
46- - name : Extract Docker metadata
28+ - name : Extract metadata
4729 id : meta
4830 uses : docker/metadata-action@v5
4931 with :
50- images : ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
32+ images : yujunzhixue/qwen2api
5133 tags : |
5234 type=raw,value=latest,enable={{is_default_branch}}
5335 type=semver,pattern={{version}}
5436 type=sha,format=short
5537
56- # 构建并推送镜像
57- - name : Build and push Docker image
38+ - name : Build and push
5839 uses : docker/build-push-action@v5
5940 with :
6041 context : .
61- push : ${{ github.event_name != 'pull_request' }}
42+ push : true
6243 tags : ${{ steps.meta.outputs.tags }}
6344 labels : ${{ steps.meta.outputs.labels }}
64- # 开启构建缓存,加快以后每次打包的速度
6545 cache-from : type=gha
6646 cache-to : type=gha,mode=max
0 commit comments