Closed
Description
Contributing guidelines
- I've read the contributing guidelines and wholeheartedly agree
I've found a bug, and:
- The documentation does not mention anything about my problem
- There are no open or closed issues that are related to my problem
Description
Explicitly setting the context to either:
- name: Build and push
uses: docker/build-push-action@v5
with:
context: "{{defaultContext}}"
or
- name: Build and push
uses: docker/build-push-action@v5
with:
context: .
results in this error.
Creating a new builder instance
/usr/local/bin/docker buildx create --name builder-f2d40647-7bfd-4310-a7a4-7f3dd40aff91 --driver docker-container --buildkitd-flags --allow-insecure-entitlement security.insecure --allow-insecure-entitlement network.host --use
ERROR: could not create a builder instance with TLS data loaded from environment. Please use `docker context create <context-name>` to create a context for current environment and then create a builder instance with context set to <context-name>
Expected behaviour
I expect the default context to be used as it's mentioned a few times in the ENV log output.
Actual behaviour
I can only get my workflow to run and successfully push to an AWS ECR, if I remove the above and use this instead:
- name: Set up Docker Context for Buildx
id: buildx-context
run: |
docker context create builders
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
with:
version: latest
endpoint: builders
# - name: Build and push
# uses: docker/build-push-action@v5
# with:
# context: "{{defaultContext}}"
I got the inspiration from this similar issue.
Is anyone able to explain why this approach works please? It's more for my understanding and ability to debug issues in future.
Regards,
Benny
Repository URL
No response
Workflow run URL
No response
YAML workflow
N/A
Workflow logs
No response
BuildKit logs
No response
Additional info
No response