Top
Best
New

Posted by psxuaw 10 hours ago

Docker is weird(codeandcake.dev)
461 points | 215 commentspage 4
q2dg 2 hours ago|
Just use Podman
dilyevsky 2 hours ago||
> Unlike metal servers, VMs are just operating systems being gaslit by a hypervisor. Your actual CPU is still executing those instructions! And if you know where to look, yyou can even read the other VMs’ memory in L1D
steezeburger 5 hours ago||
> Next up: Databases are weird

> Did you know that databases are just a file?

oOoOoOoOo

Mostly joking. It's cool to see tech demystified, but I feel like a lot of things we use and take for granted are like this.

miladyincontrol 8 hours ago||
For as "terrible of a language" Go is alleged to be for a container runtime, its not like crun or youki are exactly faster in many meaningful ways unless you count churning containers running true and exiting.

And implying the system kernel still has to run the container kinda ignores kata containers and gvisor runtimes.

0x457 7 hours ago||
It's about using go to develop container runtime being terrible and not that "if it was C it would be faster". OS runs the container, docker just does the setup and some managmenent.
gertop 6 hours ago||
For me it's not about the cpu time, but the memory. If you spin up hundreds of containers the docker overhead becomes very real.
VCFundedGenYer 7 hours ago||
Docker does not need root.

Side note almost nothing about Docker is weird. This article chooses rather boring design decisions and picks on them.

znpy 1 hour ago||
> docker requires root!

Podman has not required root in years, just saying.

Pxtl 6 hours ago||
Honestly it took me so long to pick up containerisation because of how it's marketed. "Orchestrate a zillion fake computers, ultralight VMs, livestock not pets" big whoop.

"It's an idempotent language for OS level dependencies so you can be sure exactly what is running on your server"

Gimme gimme gimme!

0xbadcafebee 7 hours ago||
Docker hasn't required root for 7 years, I wish people would stop repeating that. It uses a root daemon by default because it makes things easier. Also, Containers are only as fake as a "Desktop" in an OS, which isn't real either. It's a user, network & process namespace with a control bus and a bunch of other weird things. A Desktop is a Container with a GUI.

Other weird facts about OSes: a filesystem is a database, the Linux kernel is a monolithic program, "hidden" dot-files were a Unix bug that got carried forward, deleting a file doesn't remove the file from your machine, virtual memory is a lie, your computer can't run multiple programs at once (it's just running one at a time real fast), in 12 years most systems will crash due to one number getting too big, you technically never need to reboot because you can launch a different version of Linux while already running Linux, you can freeze a program to a file and then later resume running that same program in the same state (but nobody uses it), files aren't actually stored in directories, there's a maximum number of files (and size of file) on most filesystems (which you can use to lock up a machine, despite file quotas existing and nobody using them), you can lock up most systems by forking too many times / using too much RAM / accessing disk too much, there's a default number of open files and/or TCP ports which is artificially low and you can use to again lock up a machine, pipes are just two file descriptors connected to one memory buffer, an IP address is just one long number split up into bytes, etc.

fulafel 6 hours ago||
The rootless Docker experience used to be pretty bad and it was less friction to use something that was rootless by default (like Podman). Has this changed?
hanumseous 2 hours ago|||
it changed and its better now. rootless dockerd wants newuidmap/newgidmap + subuid range before it start, and cgroups only work with cgroup v2 + systemd. also, on a host that already has those, its fine on one without systemd, and podman is still less friction, mostly because there is no daemon to babysit
justrunme 23 minutes ago||||
[flagged]
vbezhenar 6 hours ago||
> your computer can't run multiple programs at once (it's just running one at a time real fast)

Of course it can.

crote 6 hours ago||
Give them a break, machines with multiple CPU cores have only been around for 40ish years!
forrestthewoods 4 hours ago||
One of my deeply unpopular opinions is that Docker only exists because Linux as a bad operating system that is incapable of deploying Docker. I have not once worked on a project where “we’ll solve this with Docker!” didn’t result in never ending Docker fixes and workarounds and hacks.

This is not a slight on Docker itself. It’s a slight on the conditions that induced Docker to exist.

One of the great selling points of one of my projects is “this is easy to run without needing Docker”.

ravivarmat 2 hours ago|
[flagged]
More comments...