fix(ci): create docker context before buildx to handle dind TLS
buildx create --driver docker-container cannot inherit TLS env vars from docker:dind directly; it needs a named context. Create 'tls-env' from the ambient DOCKER_HOST/DOCKER_CERT_PATH, then point buildx at it.
This commit is contained in:
@@ -16,7 +16,8 @@ backend:docker:
|
||||
DOCKER_TLS_CERTDIR: "/certs"
|
||||
before_script:
|
||||
- docker login -u "$REGISTRY_USER" -p "$REGISTRY_PASSWORD" $REGISTRY
|
||||
- docker buildx create --name ci-builder --driver docker-container --use
|
||||
- docker context create tls-env
|
||||
- docker buildx create --name ci-builder --driver docker-container --use tls-env
|
||||
script:
|
||||
- docker buildx build --output "type=image,push=true,rewrite-timestamp=true" -f backend/deploy/Dockerfile -t "$BACKEND_IMAGE:${CI_COMMIT_SHORT_SHA}" backend/
|
||||
rules:
|
||||
@@ -58,7 +59,8 @@ web:docker:
|
||||
DOCKER_TLS_CERTDIR: "/certs"
|
||||
before_script:
|
||||
- docker login -u "$REGISTRY_USER" -p "$REGISTRY_PASSWORD" $REGISTRY
|
||||
- docker buildx create --name ci-builder --driver docker-container --use
|
||||
- docker context create tls-env
|
||||
- docker buildx create --name ci-builder --driver docker-container --use tls-env
|
||||
script:
|
||||
- |
|
||||
docker buildx build --output "type=image,push=true,rewrite-timestamp=true" \
|
||||
|
||||
Reference in New Issue
Block a user