PIG 镜像 action #75
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: PIG 镜像 action | |
on: | |
workflow_dispatch: | |
inputs: | |
IMAGE_NAME: | |
description: '原镜像名称' | |
required: true | |
default: 'mysql/mysql-server' | |
NEW_NAME: | |
description: '同步后镜像名称' | |
required: true | |
default: 'mysql-server' | |
IMAGE_VERSION: | |
description: '镜像版本' | |
required: true | |
default: 'latest' | |
TARGET_REGISTRY: | |
description: '仓库地址' | |
required: true | |
default: 'registry.cn-hangzhou.aliyuncs.com' | |
TARGET_REPOSITORY: | |
description: '空间名称' | |
required: true | |
default: 'dockerhub_mirror' | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
env: | |
QYWX_ROBOT_URL: ${{ secrets.QYWX_ROBOT_URL }} | |
steps: | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v3 | |
- name: Login to Docker Registry | |
run: docker login -u ${{ secrets.DOCKER_USERNAME }} -p ${{ secrets.DOCKER_PASSWORD }} ${{ github.event.inputs.TARGET_REGISTRY }} | |
- name: Pull and push all platform images | |
run: | | |
# 创建一个新的 builder 实例 | |
docker buildx create --use | |
# 拉取源镜像的 manifest list | |
docker buildx imagetools inspect ${{ github.event.inputs.IMAGE_NAME }}:${{ github.event.inputs.IMAGE_VERSION }} | |
# 使用 buildx 拉取并推送所有架构的镜像 | |
docker buildx imagetools create \ | |
--tag ${{ github.event.inputs.TARGET_REGISTRY }}/${{ github.event.inputs.TARGET_REPOSITORY }}/${{ github.event.inputs.NEW_NAME }}:${{ github.event.inputs.IMAGE_VERSION }} \ | |
${{ github.event.inputs.IMAGE_NAME }}:${{ github.event.inputs.IMAGE_VERSION }} | |
- name: qyweixin send message | |
if: ${{ env.QYWX_ROBOT_URL != '' }} | |
uses: chf007/action-wechat-work@master | |
env: | |
WECHAT_WORK_BOT_WEBHOOK: ${{secrets.QYWX_ROBOT_URL}} | |
IMAGE_URL: ${{ github.event.inputs.TARGET_REGISTRY }}/${{ github.event.inputs.TARGET_REPOSITORY }}/${{ github.event.inputs.NEW_NAME }}:${{ github.event.inputs.IMAGE_VERSION }} | |
with: | |
msgtype: markdown | |
content: | | |
# 镜像同步成功(多架构) | |
``` | |
${{ env.IMAGE_URL }} | |
支持的架构: | |
$(docker buildx imagetools inspect ${{ env.IMAGE_URL }} | grep -A 5 "Platform:") | |
``` |