nix2container is a Go implementation of our dockerTools functions. The main difference is that it relies on Skopeo to produce images: thanks to Skopeo, we don’t have to re-implement all image creation mechanisms.
Another difference is the
buildLayer function, allowing to manually isolate some dependencies into their own layers: these layers don’t need to be rebuilt nor repushed (see this example): the objective is to speed up image loading times during application development cycles.
For instance, to load and run a bash image into podman,
$ nix run github:nlewo/nix2container#examples.bash.copyToPodman $ podman run -it bash
Even if nix2container is still in progress, it can already be used to build your OCI images. The main next step of this project will be to submit our Skopeo patch upstream!