diff --git a/.github/workflows/container-build.yml b/.github/workflows/container-build.yml index f249115..e148d7e 100644 --- a/.github/workflows/container-build.yml +++ b/.github/workflows/container-build.yml @@ -22,27 +22,19 @@ jobs: - name: Checkout repository uses: actions/checkout@v4 - # 1. Determine Registry and Image Name dynamically - name: Prepare Registry Environment id: prep run: | - # Check if running on GitHub or Gitea if [[ "${{ github.server_url }}" == *"github.com"* ]]; then - echo "Running on GitHub" echo "REGISTRY=ghcr.io" >> $GITHUB_ENV else - echo "Running on Gitea" - # Strip 'https://' and trailing slashes from the server URL to get the hostname - # e.g., https://gitea.my-server.com/ -> gitea.my-server.com + # Strip protocol (http/https) to get just the hostname:port CLEAN_HOST=$(echo "${{ github.server_url }}" | sed -e 's|^[^/]*//||' -e 's|/.*$||') echo "REGISTRY=$CLEAN_HOST" >> $GITHUB_ENV fi - - # Docker images must be lowercase. GitHub/Gitea repos might contain uppercase. IMAGE_NAME=$(echo "${{ github.repository }}" | tr '[:upper:]' '[:lower:]') echo "IMAGE_NAME=$IMAGE_NAME" >> $GITHUB_ENV - # 2. Login using the dynamic REGISTRY variable - name: Log in to Container Registry uses: docker/login-action@v3 with: @@ -50,10 +42,15 @@ jobs: username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} + # UPDATED STEP: Allow HTTP/Insecure registry - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3 + with: + buildkitd-config-inline: | + [registry."${{ env.REGISTRY }}"] + http = true + insecure = true - # 3. Push using dynamic tags - name: Build and push multi-arch Docker image uses: docker/build-push-action@v5 with: