diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml index 6179aef..3c26550 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-image.yml @@ -6,18 +6,21 @@ on: jobs: buildx: runs-on: ubuntu-latest + strategy: + matrix: + platform: [linux/amd64, linux/arm/v7, linux/arm64/v8] + steps: - - - name: Checkout + - name: Checkout uses: actions/checkout@v4 - - - name: Set up QEMU + + - name: Set up QEMU uses: docker/setup-qemu-action@v3 - - - name: Set up Docker Buildx + + - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3 - - - name: Cache Docker layers + + - name: Cache Docker layers uses: actions/cache@v4 id: cache with: @@ -25,20 +28,21 @@ jobs: key: ${{ runner.os }}-buildx-${{ github.sha }} restore-keys: | ${{ runner.os }}-buildx- - - - name: Login to DockerHub + + - name: Login to DockerHub uses: docker/login-action@v3 with: username: ${{ secrets.DOCKER_USERNAME }} password: ${{ secrets.DOCKER_PASSWORD }} - - name: Build and push + + - name: Build and push multi-arch image uses: docker/build-push-action@v5 with: context: . - platforms: linux/arm/v7,linux/amd64 + platforms: ${{ matrix.platform }} push: true tags: albertoxamin/bang:latest - cache-from: type=registry,ref=user/app:latest + cache-from: type=registry,ref=albertoxamin/bang:latest cache-to: type=inline - name: Notify discord @@ -47,5 +51,5 @@ jobs: env: DISCORD_WEBHOOK_URL: ${{ secrets.DISCORD_WEBHOOK_URL }} GITHUB_ACTOR: ${{ github.actor }} - GITHUB_JOB_NAME: "Docker image main :latest" + GITHUB_JOB_NAME: "Docker multi-arch image :latest" GITHUB_JOB_STATUS: ${{ job.status }}