Yo,
Wandering what the limit is when it comes to how many containers I can run. Currently I’m running around 15 containers. What happens if this is increased to say, 40? Also, can docker containers go “idle” when not being used - to save system resources?
I’m running a i7-6700k Intel cpu. Doesn’t seem to be struggling at all with my current setup at least, maybe only when transcoding for Jellyfin.
None. Can’t fuck with it.
Run 19 but barely get over 5% usage even when transcoding 4K movies where the copyright has expired.
None, I use Nix instead. :P
None I use kubernetes with pods instead 😁
A Docker container is essentially a process running on your machine. Just like any other process. It can be idle, stopped or hogging the CPU. You can use Docker constraints to limit resource use if you want to, memory, CPU and network to name a few.
So, can you run 40 processes?
Very likely. Probably 400 or 4000, depending on CPU usage and memory.
I ran that particular CPU with 64 GB of RAM and used it to run multiple virtual machines, my main debian desktop and a VM specifically as a docker host, running dozens of instances of Google Chrome without ever noticing it slowing down.
Then the power cable shortened out and life was never the same. That was six months ago, the machine was a late 2015 iMac running macos and VMware Fusion.
I’ll add here that the “docker top” command allows you to easily see what kind of resources your containers are using.
If you prefer a UI, Dozzle runs as a container, is super lightweight, requires basically no setup, and makes it very easy to see your docker resource usage.
Very handy, thanks!
Also try Lazydocker, I think it’s far superior to Dozzle for features. If you run it in a folder with a docker-compose.yml, it’ll just show the processes from that set of containers, if you run it in any other folder it’ll show all your docker containers.
Looks like 9? Here’s what I’m currently running:
- actual budget
- caddy (for TLS trunking)
- nextcloud and collabora
- vaultwarden (currently unused)
- jellyfin
- home assistant
The rest are databases and other auxiliary stuff. I’m probably going to work on it some this holiday break, because I’d like to eventually move to microOS, and I still have a few things running outside of containers that I need to clean up (e.g. Samba).
But yeah, like others said, it really doesn’t matter. On Linux (assuming you’re not using Docker Desktop), a container is just a process. On other systems (e.g. Windows, macOS, or Linux w/ Desktop), they run in a VM, which is a bit heavier and reserves more resources for itself. I could run 1000 containers and it really wouldn’t matter, as long as they’re pretty light.
Been curious about deploying HA with docker. As I understand the only limitation is you can’t use add-ons?
You cannot install addons from the UI, but you can manually install them. Addons are just Docker containers that get configured automatically.
Zero. It seems like software is increasingly expecting to be deployed in a container though, so that probably won’t last forever.
While I understand the frustration of feeling like you’re being forced to adopt a particular process rather than being allowed to control your setup the way you see fit, the rapid proliferation of containers happened because they really do offer astonishing advantages over traditional methods of software development.
It was a total game changer for me at least. Gone are the days of me spending an entire weekend day upgrading applications and eventually being scared to patch services. I also try things out I wouldn’t have. I can have thee service up in a few minutes
I like containers it makes shit very convenient. I dont give a fuck about the specifics of some service i copy paste a docker compose and im off to the races.
Remember dealing with conflicting packages and conf files or updating dozens of vms? I sure do, and I don’t miss it at all
Docker containers arnt virtual machines despite acting like them. They dont actually require compute resources to be sitting around doing nothing like a traditional vm cos they are essentially just a proxy between the kernal in the container and the kernal on the base machine.
If the container isnt doing anything then it isnt consuming resources.
It does consume some resources just not a lot.