4 ms·
+1000 on docker images being easier to construct than it seems. I wrote a few blog posts awhile ago on this where I reimplemented docker pull and push in bash:
by dlor 8y ago
+1000 on docker images being easier to construct than it seems.
I wrote a few blog posts awhile ago on this where I reimplemented docker pull and push in bash:
https://www.danlorenc.com/posts/containers-part-1/ https://www.danlorenc.com/posts/containers-part-1/
It even got up to basic image modification support.
Disclosure: I work on kaniko and lots of other things that construct docker images without docker at Google.
- lstamour 8y agoSee also: Docker image spec 1.2 https://github.com/moby/moby/blob/master/image/spec/v1.2.md https://github.com/moby/moby/blob/master/image/spec/v1.2.md Not to be confused with the similarly named “Image Manifest V2, Schema 2”: https://docs.docker.com/registry/spec/manifest-v2-2/ https://docs.docker.com/registry/spec/manifest-v2-2/ Oh and there’s the OCI spec too: https://github.com/opencontainers/image-spec/blob/master/spec.md https://github.com/opencontainers/image-spec/blob/master/spe... (and its repo) Really enjoying all these Docker-demystifying posts, I wish I’d found these months ago while puzzling over how Dockerless worked from confusing bzl files. In fact, I really wanted Kaniko just yesterday as I poured over DinD and wondered why it was so complicated to build Docker images within Kubernetes. Now all we need is a lightweight CI wrapper for K8S jobs with GitHub webhook and kubectl apply support! :)
- fulafel 8y agoThis unpacks a series of tarballs fetched with curl, but it's not clear how it would correctly handle file deletions.
- errm 8y agoIn the OCI image spec file deletions are handled with special whiteout files... See: https://github.com/opencontainers/image-spec/blob/master/layer.md#whiteouts https://github.com/opencontainers/image-spec/blob/master/lay...