fix(ci): use docker buildx with buildkitd config for insecure HTTP registry
Some checks failed
CI/CD Pipeline / Code Quality Checks (push) Successful in 1m53s
CI/CD Pipeline / Run Tests (push) Successful in 2m3s
CI/CD Pipeline / Build Docker Images (push) Successful in 2s
CI/CD Pipeline / Push to Gitea Registry (push) Failing after 2m37s

This commit is contained in:
2026-02-02 13:26:56 +01:00
parent 65383b8a40
commit ace2391620

View File

@@ -121,18 +121,21 @@ jobs:
git clone --depth=1 --branch=${GITHUB_REF_NAME} ${REPO_URL}/${GITHUB_REPOSITORY}.git . git clone --depth=1 --branch=${GITHUB_REF_NAME} ${REPO_URL}/${GITHUB_REPOSITORY}.git .
git checkout ${GITHUB_SHA} git checkout ${GITHUB_SHA}
- name: Configure Docker for insecure registry - name: Setup Docker Buildx for insecure registry
run: | run: |
REGISTRY_URL=$(echo ${GITHUB_SERVER_URL} | sed 's|.*://||') REGISTRY_URL=$(echo ${GITHUB_SERVER_URL} | sed 's|.*://||')
sudo mkdir -p /etc/docker
echo "{\"insecure-registries\": [\"${REGISTRY_URL}\"]}" | sudo tee /etc/docker/daemon.json
sudo systemctl restart docker || sudo service docker restart || true
sleep 3
- name: Login to Gitea Container Registry # Create buildkitd config for HTTP registry
run: | mkdir -p ~/.docker/buildx
REGISTRY_URL=$(echo ${GITHUB_SERVER_URL} | sed 's|.*://||') cat > /tmp/buildkitd.toml << EOF
echo "${{ gitea.token }}" | docker login ${REGISTRY_URL} -u ${{ gitea.actor }} --password-stdin [registry."${REGISTRY_URL}"]
http = true
insecure = true
EOF
# Create and use buildx builder with insecure registry support
docker buildx create --name insecure-builder --driver docker-container --config /tmp/buildkitd.toml --use
docker buildx inspect --bootstrap
- name: Build and push images - name: Build and push images
run: | run: |
@@ -142,32 +145,22 @@ jobs:
REGISTRY="${REGISTRY_URL}/${{ github.repository_owner }}" REGISTRY="${REGISTRY_URL}/${{ github.repository_owner }}"
# Build and push web image # Build and push web image
docker build -f ./docker/Dockerfile.web \ docker buildx build --push \
-f ./docker/Dockerfile.web \
-t ${REGISTRY}/mostovik-web:${BRANCH_TAG} \ -t ${REGISTRY}/mostovik-web:${BRANCH_TAG} \
-t ${REGISTRY}/mostovik-web:${BRANCH_TAG}-${SHA_SHORT} \ -t ${REGISTRY}/mostovik-web:${BRANCH_TAG}-${SHA_SHORT} \
$([ "${GITHUB_REF_NAME}" = "main" ] && echo "-t ${REGISTRY}/mostovik-web:latest") \
. .
docker push ${REGISTRY}/mostovik-web:${BRANCH_TAG}
docker push ${REGISTRY}/mostovik-web:${BRANCH_TAG}-${SHA_SHORT}
# Tag as latest if main branch
if [ "${GITHUB_REF_NAME}" = "main" ]; then
docker tag ${REGISTRY}/mostovik-web:${BRANCH_TAG} ${REGISTRY}/mostovik-web:latest
docker push ${REGISTRY}/mostovik-web:latest
fi
# Build and push celery image # Build and push celery image
docker build -f ./docker/Dockerfile.celery \ docker buildx build --push \
-f ./docker/Dockerfile.celery \
-t ${REGISTRY}/mostovik-celery:${BRANCH_TAG} \ -t ${REGISTRY}/mostovik-celery:${BRANCH_TAG} \
-t ${REGISTRY}/mostovik-celery:${BRANCH_TAG}-${SHA_SHORT} \ -t ${REGISTRY}/mostovik-celery:${BRANCH_TAG}-${SHA_SHORT} \
$([ "${GITHUB_REF_NAME}" = "main" ] && echo "-t ${REGISTRY}/mostovik-celery:latest") \
. .
docker push ${REGISTRY}/mostovik-celery:${BRANCH_TAG} env:
docker push ${REGISTRY}/mostovik-celery:${BRANCH_TAG}-${SHA_SHORT} DOCKER_BUILDKIT: 1
# Tag as latest if main branch
if [ "${GITHUB_REF_NAME}" = "main" ]; then
docker tag ${REGISTRY}/mostovik-celery:${BRANCH_TAG} ${REGISTRY}/mostovik-celery:latest
docker push ${REGISTRY}/mostovik-celery:latest
fi
- name: Image summary - name: Image summary
run: | run: |