From 041cb69bb8ab0d4baf0981448a0542b928e14afd Mon Sep 17 00:00:00 2001 From: SergeantPanda Date: Tue, 30 Sep 2025 19:17:35 -0500 Subject: [PATCH] Push to dockerhub as well. --- .github/workflows/ci.yml | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 30899e40..e8436dbd 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -111,6 +111,13 @@ jobs: username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} + - name: Login to Docker Hub + uses: docker/login-action@v2 + with: + registry: docker.io + username: ${{ secrets.DOCKERHUB_USERNAME }} + password: ${{ secrets.DOCKERHUB_TOKEN }} + # use metadata from the prepare job - name: Build and push Docker image @@ -125,9 +132,14 @@ jobs: # push arch-specific tags from each matrix job (they will be combined # into a multi-arch manifest in a follow-up job) tags: | + # GHCR tags ghcr.io/${{ needs.prepare.outputs.repo_owner }}/${{ needs.prepare.outputs.repo_name }}:${{ needs.prepare.outputs.branch_tag }}-${{ matrix.platform }} ghcr.io/${{ needs.prepare.outputs.repo_owner }}/${{ needs.prepare.outputs.repo_name }}:${{ needs.prepare.outputs.version }}-${{ needs.prepare.outputs.timestamp }}-${{ matrix.platform }} ghcr.io/${{ needs.prepare.outputs.repo_owner }}/${{ needs.prepare.outputs.repo_name }}:${{ needs.prepare.outputs.sha_short }}-${{ matrix.platform }} + # Docker Hub tags (push under your Docker Hub username) + docker.io/${{ secrets.DOCKERHUB_USERNAME }}/${{ needs.prepare.outputs.repo_name }}:${{ needs.prepare.outputs.branch_tag }}-${{ matrix.platform }} + docker.io/${{ secrets.DOCKERHUB_USERNAME }}/${{ needs.prepare.outputs.repo_name }}:${{ needs.prepare.outputs.version }}-${{ needs.prepare.outputs.timestamp }}-${{ matrix.platform }} + docker.io/${{ secrets.DOCKERHUB_USERNAME }}/${{ needs.prepare.outputs.repo_name }}:${{ needs.prepare.outputs.sha_short }}-${{ matrix.platform }} build-args: | REPO_OWNER=${{ needs.prepare.outputs.repo_owner }} REPO_NAME=${{ needs.prepare.outputs.repo_name }} @@ -153,6 +165,13 @@ jobs: username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} + - name: Login to Docker Hub + uses: docker/login-action@v2 + with: + registry: docker.io + username: ${{ secrets.DOCKERHUB_USERNAME }} + password: ${{ secrets.DOCKERHUB_TOKEN }} + - name: Create multi-arch manifest tags run: | set -euo pipefail @@ -176,3 +195,13 @@ jobs: # short sha tag docker buildx imagetools create --tag ghcr.io/${OWNER}/${REPO}:${SHA} \ ghcr.io/${OWNER}/${REPO}:${SHA}-amd64 ghcr.io/${OWNER}/${REPO}:${SHA}-arm64 + + # also create Docker Hub manifests using the same username + docker buildx imagetools create --tag docker.io/${{ secrets.DOCKERHUB_USERNAME }}/${REPO}:${BRANCH_TAG} \ + docker.io/${{ secrets.DOCKERHUB_USERNAME }}/${REPO}:${BRANCH_TAG}-amd64 docker.io/${{ secrets.DOCKERHUB_USERNAME }}/${REPO}:${BRANCH_TAG}-arm64 + + docker buildx imagetools create --tag docker.io/${{ secrets.DOCKERHUB_USERNAME }}/${REPO}:${VERSION}-${TIMESTAMP} \ + docker.io/${{ secrets.DOCKERHUB_USERNAME }}/${REPO}:${VERSION}-${TIMESTAMP}-amd64 docker.io/${{ secrets.DOCKERHUB_USERNAME }}/${REPO}:${VERSION}-${TIMESTAMP}-arm64 + + docker buildx imagetools create --tag docker.io/${{ secrets.DOCKERHUB_USERNAME }}/${REPO}:${SHA} \ + docker.io/${{ secrets.DOCKERHUB_USERNAME }}/${REPO}:${SHA}-amd64 docker.io/${{ secrets.DOCKERHUB_USERNAME }}/${REPO}:${SHA}-arm64