概览:
先决条件
docker hub账号
Github账号,(需要使用github actions)
镜像列表
格式: 源镜像地址 自定义镜像名称前缀
images.txt
,以nfs-subdir-external-provisioner为例。
1
| k8s.gcr.io/sig-storage/nfs-subdir-external-provisioner:v4.0.2 sig-storage
|
actions配置
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
| name: docker image wrapper
on: push: branches: [ "master" ]
jobs: build: runs-on: ubuntu-latest
steps: - name: Checkout repository uses: actions/checkout@v3 - name: Login to Docker Hub uses: docker/login-action@v1 with: username: ${{ secrets.DOCKER_HUB_USERNAME }} password: ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }} - name: Set up Docker Buildx uses: docker/setup-buildx-action@v1 - name: Pull & Rename Images run: | IFS=$'\n\n' && for img in $(cat images.txt);do echo $img | awk '{print $1}'| xargs -I {} docker pull {};done IFS=$'\n\n' && for img in $(cat images.txt);do echo $img | awk '{print $1}' | awk -F/ '{print $NF}' | xargs -I {} docker tag $(echo $img | awk '{print $1}') ka1i137/$(echo $img | awk '{print $2}')-{} ;done - name: Show Images run: | docker images docker images| grep ka1i137 - name: Push Images run: | for img in $(docker images| grep ka1i137 | awk -v OFS=':' '{print $1,$2}');do docker push $img ;done
|
关联docker hub
docker官方文档: github-actions
验证镜像

传送门
代码仓库: image-wrapper
镜像仓库: ka1i137
Hi there, I’m Mardan(ka1i).