Create build.yml

This commit is contained in:
jmal 2024-03-04 09:44:27 +08:00 committed by GitHub
parent 0a6a46621a
commit 6ac40799bb
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

42
.github/workflows/build.yml vendored Normal file
View File

@ -0,0 +1,42 @@
name: Build and Push Multi-Platform Docker Image
on:
workflow_dispatch:
release:
types: [published]
tags: [v*]
jobs:
build-and-push:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1
- name: Extract project version from package.json
run: |
VERSION=$(node -p "require('./package.json').version")
echo "PROJECT_VERSION=$VERSION" >> $GITHUB_ENV
- name: Login to Docker Hub
uses: docker/login-action@v1
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
- name: Build and push Docker image
uses: docker/build-push-action@v2
with:
context: .
file: ./Dockerfile
push: true
tags: jmal/jmalcloud-nginx:${{ env.PROJECT_VERSION }},jmal/jmalcloud-nginx:latest
platforms: linux/amd64,linux/arm64
build-args: |
VERSION=${{ env.PROJECT_VERSION }}
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}