Live data from Hacker News

Gocker: Docker implemented in 1.3k lines of Go

unixism.net

11–20 of 89 posts

Re: Gocker: Docker implemented in 1.3k lines of Go

#15
post #5

Isn’t Docker implemented in Go already?

...and it was probably around 1.5K lines early in its life.

But that misses the point. This is very helpful for understanding how a Docker-like system works since it's a small and mostly self-contained implementation. You can read through the entire thing and fully understand it.

It only cheats in the container registry handling where it pulls in github.com/google/go-containerregistry and for the network setup where it uses github.com/vishvananda/netlink. The rest is done in terms of Go stdlib and syscalls.

Early Docker used external utilities (lxc, iptables) and had the client/server stuff already so it's not as straightforward.

Re: Gocker: Docker implemented in 1.3k lines of Go

#18
post #15
post #5

Isn’t Docker implemented in Go already?

...and it was probably around 1.5K lines early in its life. But that misses the point. This is very helpful for understanding how a Docker-like system works since it's a small and mostly self-contained implementation. You can read through the entire thing and fully understand it. It only cheats in the container registry handling where it pulls in github.com/google/go-containerregistry and for the network setup where…

Yep. Docker is famously written Go. The only reason I wrote this is as an educational tool to discuss how containers under Linux really work. It’s self-contained (pun unintended) except for the usage of the go-containerregistry package, which anyway does stuff unrelated to how containers are managed on Linux.

Re: Gocker: Docker implemented in 1.3k lines of Go

#19
Honestly, I don't like lines of code as a metric for anything over the novelty amount of 1. And even then, that's usually some demonic Python list comprehension code.

That being said, the code here is pretty approachable and they weren't noticeably trying to cram it into fewer lines. Like the library, not this marketing.

Post reply on HN