3 ms·
But in order to build with BuildKit you MUST BE connected to the internet during the build... So not ready to go yet...
by pulse7 7y ago
But in order to build with BuildKit you MUST BE connected to the internet during the build... So not ready to go yet...
- AnthonBerg 7y agoThank you! I didn't know that!
- ses1984 7y agoWhy in the world would you need an internet connection to do this? Never used nor heard of build kit but that seems crazy.
- pulse7 7y agoBuildKit is an experimental replacement for docker build from Docker Ltd. When building it fetches some metafiles from the internet. So you can not use it in isolated environments...
- AnthonBerg 7y agoExactly. It's experimental, so this WIP compromise in implementation is understandable. I'm very grateful for the work on BuildKit.
- ses1984 7y agoYeah but why would you build in that kind of tech debt in the first place? It seems a lot of effort to host meta files and keep that available than some other solution that doesn't require internet access.
- AnthonBerg 7y agoI take it as a temporary measure that will be undone when it's past being experimental.
- ses1984 7y agoIf I were to propose to my team that we install a temporary measure in the form of an additional service that needs availability they would smack me down, because that's a pretty stupid temporary measure.
- AnthonBerg 7y agoSoftware is generally published online. Docker image repositories are generally online. The very act of building a Docker image pulling in dependencies is generally done online. It was a deep hack into the entirety of the Docker build chain. This way it was probably possible to publish experimental work-in-progress build features to the world at a faster pace than the official Docker release cycle. And as pointed out above, the online-only requirement has been lifted already. The situation is perfectly understandable, and to be commended that people offered to do this work for the betterment of all.
- toniti 7y agoI assume you mean the helper for COPY/ADD is pulled from the registry. That is not the case since Buildkit v0.5 / Docker v19.03 . If you have images you use locally, network connectivity is not required, otherwise, BuildKit will verify that the mutable tags have not changed in the registry (eg. it doesn't use the string "latest" to verify the validity of cache).
- pulse7 7y agoThe message without internet connection is: ERROR resolve image config for docker.io/docker/dockerfile:1.0-experimental (the most current version of Docker Desktop for Windows - 2.0.0.3 with Docker Engine 18.09.2)
- AnthonBerg 7y agoWhich is indeed not Docker 19.03 :)
- toniti 7y agoAs I mentioned you need to have the images you use available locally (eg. `docker images | grep docker/dockerfile`). In your Dockerfile you explicitly say that you want to use docker/dockerfile:1.0-experimental from the hub as a build frontend. If there is no such name/tag locally it needs to check the state in the registry as `1.0-experimental` tag is updated on new releases.