
K3c – Classic Docker for a Kubernetes World - SomaticPirate
https://github.com/ibuildthecloud/k3c
======
sciurus
> Fundamentally k3c is a built on the Container Runtime Interface (CRI). In
> fact it's really like a nicer version of of cri-tool. CRI doesn't cover
> image building and some other small image tasks like tag and push. For image
> building Moby's buildkit is used internally, and for other things OCI's
> containerd is used.

I have to admit that in the container world I can't keep up with the different
standards, what they each cover, and the different implementations of them. I
think a non-docker K8s is already possible, this just reuses that stack while
reimplementing part of it in order to make the cli more like the docker cli?
Maybe despite the description this is actually intended to be used outside of
K8s?

~~~
darren0
This tool is intended to be used outside of Kubernetes. Before you can deploy
something on Kubernetes you first need to build a container. Docker is the
primary tool used for building and developing containers. The intention of k3c
is to replace Docker with a smaller tool that has the required parts of Docker
that people use for development. And to make that tool more complimentary to
the larger k8s ecosystem.

~~~
drdaeman
I wonder - why `k3c` and not revive `rkt` instead?

~~~
darren0
rkt is really a fundamentally different architecture and approach than Docker,
but more importantly a large unmaintained code base. k3c is really a fairly
light layer on top of CRI, containerd and buildkit. So the maintenance burden
is very low and quality should be high given it's using the same technology as
production Kubernetes clusters.

------
alexellisuk
It should probably be noted that the "native" experience that Docker Desktop
gives MacOS users is a bit of a trickery - Docker needs Linux and so does
containerd (used by both k3c and Docker). Needing Linux means needing a VM as
a MacOS or Windows user.

Today MacOS users need to revert back to vagrant or to adopt a newer VM-
management tool like [https://multipass.run](https://multipass.run) and create
a full Linux VM to enjoy tooling k3c from a Mac.

I also ran into this developing a containerd backend for OpenFaaS called faasd
- [https://github.com/alexellis/faasd](https://github.com/alexellis/faasd)

We need an experience like Docker Desktop, but for containerd, or for Linux in
general on MacOS. Any ideas here Darren?

------
thawkins
How does this compare with podman, that does work in rootless mode?

