The status of docker

John Nielsen lists at jnielsen.net
Wed Jan 23 18:37:07 UTC 2019


> On Jan 22, 2019, at 11:54 PM, Sergey Zakharchenko <doublef.mobile at gmail.com> wrote:
> 
> Hello there guys,
> 
>> Not quite. I took over the docker freebsd port. Currently I am trying to
>> change him to moby project on GH.
> 
> Jochen, I wish you the best of luck. As a couple of cents, and on
> behalf of Digital Loggers, Inc., I've uploaded some old patches that
> we use to run an ancient version of Docker on FreeBSD:
> https://github.com/digitalloggers/docker-zfs-patches . They speed up
> building of large containers by not iterating over all container files
> at every single stage, using ZFS diffs instead. No warranty, express
> or implied, is provided on those patches; I'm sure you'll find some
> edge cases where they'll break your container builds; you have been
> warned. Also, forgive my Go: that was the first and hopefully the last
> time I wrote something in it.
> 
> That's not much; the real problems are with volume (e.g. single-file
> "volumes" which are hard links) and networking support; they were
> solved (kind of) by us by dynamically generating Dockerfiles and
> adding container startup wrappers, to the point that most would say
> it's too mutilated to be named Docker, so I'm afraid we aren't sharing
> those for the time being.
> 
> My answers to why on earth one would run Docker under FreeBSD instead
> of using plain (or wrapped in yet another wrapper unknown to
> non-FreeBSD) jails would be uniformity, simplicity, skill reuse, etc.
> of quite a broad range of operations. However, Docker/Moby is really
> too tied to Linux; there seem to be random attempts at overcoming that
> but they don't receive enough mind share. Jetpack
> (https://github.com/3ofcoins/jetpack/) could probably also benefit
> from the patches (with appropriate adjustments). Interested people
> willing to invest time in this should gather and decide how to move
> on.

Responding to a random message to share a random-ish thought: has anyone looked at Firecracker?

https://firecracker-microvm.github.io/
https://aws.amazon.com/blogs/aws/firecracker-lightweight-virtualization-for-serverless-computing/

It's the now-open-source basis of AWS's Fargate service. The idea is to be more secure and flexible than Docker for Kubernetes-like workloads. Linux-only at the moment I'm sure but I don't see any reason that FreeBSD couldn't run inside a Firecracker microVM (using a stripped-down kernel with virtio_blk, if_vtnet, uart and either atkbdc or a custom driver for the 1-button keyboard. It's also feasible that FreeBSD could be a Firecracker host (and able to unmodified pre-packaged Linux or other microVMs) if someone with the right Go skills wanted to port the KVM bits to use VMM/bhyve.

JN



More information about the freebsd-virtualization mailing list