mirror of
https://github.com/yanhao98/composite-actions.git
synced 2025-07-13 23:00:48 +08:00
64 lines
2.0 KiB
YAML
64 lines
2.0 KiB
YAML
name: "打包推送 Docker 镜像"
|
|
description: "打包 Docker 镜像并推送到 Docker Hub"
|
|
inputs:
|
|
login_repository:
|
|
description: "docker/login-action 的 registry 参数"
|
|
default: "docker.io"
|
|
required: false
|
|
login_username:
|
|
description: "docker/login-action 的 username 参数"
|
|
required: true
|
|
login_password:
|
|
description: "docker/login-action 的 password 参数"
|
|
required: true
|
|
build_file:
|
|
description: "Dockerfile 文件路径"
|
|
default: "./Dockerfile"
|
|
required: false
|
|
build_context:
|
|
description: "Docker 构建上下文路径"
|
|
default: "."
|
|
required: false
|
|
build_platforms:
|
|
description: "Docker 构建平台"
|
|
default: "linux/amd64,linux/arm64"
|
|
required: false
|
|
build_push:
|
|
description: "是否推送 Docker 镜像"
|
|
default: "true"
|
|
required: false
|
|
build_load:
|
|
description: "是否加载 Docker 镜像"
|
|
default: "false"
|
|
required: false
|
|
runs:
|
|
using: "composite"
|
|
steps:
|
|
- uses: actions/checkout@main
|
|
with:
|
|
filter: blob:none
|
|
show-progress: false
|
|
- name: Login to DockerHub
|
|
uses: docker/login-action@v3
|
|
with:
|
|
registry: ${{ inputs.login_repository }}
|
|
username: ${{ inputs.login_username }}
|
|
password: ${{ inputs.login_password }}
|
|
- name: Set up QEMU
|
|
uses: docker/setup-qemu-action@v3
|
|
- name: Set up Docker Buildx
|
|
uses: docker/setup-buildx-action@v3
|
|
- name: Build and push
|
|
uses: docker/build-push-action@v6
|
|
with:
|
|
file: ${{ inputs.build_file }}
|
|
context: ${{ inputs.build_context }}
|
|
platforms: ${{ inputs.build_platforms }}
|
|
push: ${{ inputs.build_push }}
|
|
load: ${{ inputs.build_load }}
|
|
# tags: ${{ steps.meta.outputs.tags }}
|
|
# labels: ${{ steps.meta.outputs.labels }}
|
|
cache-from: type=gha
|
|
cache-to: type=gha,mode=max
|
|
# cache-from: type=local,src=/tmp/.buildx-cache
|
|
# cache-to: type=local,dest=/tmp/.buildx-cache |