diff --git a/.gitea/workflows/build-push.yaml b/.gitea/workflows/build-push.yaml index 8ca010b..381652d 100644 --- a/.gitea/workflows/build-push.yaml +++ b/.gitea/workflows/build-push.yaml @@ -114,11 +114,23 @@ jobs: username: ${{ vars.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - # Login to Gitea registry (direct docker login for rootless DinD compatibility) - - name: Login to Gitea Registry + # Create docker config for buildx to use (no daemon restart needed) + - name: Configure registry credentials if: github.event_name != 'pull_request' run: | - echo "${{ secrets.REGISTRY_TOKEN }}" | docker login ${{ env.REGISTRY_HOST }} -u ${{ secrets.REGISTRY_USER }} --password-stdin + mkdir -p ~/.docker + echo "${{ secrets.REGISTRY_TOKEN }}" | docker --config ~/.docker login ${{ env.REGISTRY_HOST }} -u ${{ secrets.REGISTRY_USER }} --password-stdin || true + # Also try creating auth directly for buildx + AUTH=$(echo -n "${{ secrets.REGISTRY_USER }}:${{ secrets.REGISTRY_TOKEN }}" | base64) + cat > ~/.docker/config.json << EOF + { + "auths": { + "${{ env.REGISTRY_HOST }}": { + "auth": "$AUTH" + } + } + } + EOF - name: Extract metadata id: meta @@ -166,10 +178,23 @@ jobs: username: ${{ vars.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - - name: Login to Gitea Registry + # Create docker config for buildx to use (no daemon restart needed) + - name: Configure registry credentials if: github.event_name != 'pull_request' run: | - echo "${{ secrets.REGISTRY_TOKEN }}" | docker login ${{ env.REGISTRY_HOST }} -u ${{ secrets.REGISTRY_USER }} --password-stdin + mkdir -p ~/.docker + echo "${{ secrets.REGISTRY_TOKEN }}" | docker --config ~/.docker login ${{ env.REGISTRY_HOST }} -u ${{ secrets.REGISTRY_USER }} --password-stdin || true + # Also try creating auth directly for buildx + AUTH=$(echo -n "${{ secrets.REGISTRY_USER }}:${{ secrets.REGISTRY_TOKEN }}" | base64) + cat > ~/.docker/config.json << EOF + { + "auths": { + "${{ env.REGISTRY_HOST }}": { + "auth": "$AUTH" + } + } + } + EOF - name: Extract metadata id: meta @@ -217,10 +242,23 @@ jobs: username: ${{ vars.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - - name: Login to Gitea Registry + # Create docker config for buildx to use (no daemon restart needed) + - name: Configure registry credentials if: github.event_name != 'pull_request' run: | - echo "${{ secrets.REGISTRY_TOKEN }}" | docker login ${{ env.REGISTRY_HOST }} -u ${{ secrets.REGISTRY_USER }} --password-stdin + mkdir -p ~/.docker + echo "${{ secrets.REGISTRY_TOKEN }}" | docker --config ~/.docker login ${{ env.REGISTRY_HOST }} -u ${{ secrets.REGISTRY_USER }} --password-stdin || true + # Also try creating auth directly for buildx + AUTH=$(echo -n "${{ secrets.REGISTRY_USER }}:${{ secrets.REGISTRY_TOKEN }}" | base64) + cat > ~/.docker/config.json << EOF + { + "auths": { + "${{ env.REGISTRY_HOST }}": { + "auth": "$AUTH" + } + } + } + EOF - name: Extract metadata id: meta @@ -268,10 +306,23 @@ jobs: username: ${{ vars.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - - name: Login to Gitea Registry + # Create docker config for buildx to use (no daemon restart needed) + - name: Configure registry credentials if: github.event_name != 'pull_request' run: | - echo "${{ secrets.REGISTRY_TOKEN }}" | docker login ${{ env.REGISTRY_HOST }} -u ${{ secrets.REGISTRY_USER }} --password-stdin + mkdir -p ~/.docker + echo "${{ secrets.REGISTRY_TOKEN }}" | docker --config ~/.docker login ${{ env.REGISTRY_HOST }} -u ${{ secrets.REGISTRY_USER }} --password-stdin || true + # Also try creating auth directly for buildx + AUTH=$(echo -n "${{ secrets.REGISTRY_USER }}:${{ secrets.REGISTRY_TOKEN }}" | base64) + cat > ~/.docker/config.json << EOF + { + "auths": { + "${{ env.REGISTRY_HOST }}": { + "auth": "$AUTH" + } + } + } + EOF - name: Extract metadata id: meta