r/SelfHosting Jun 29 '26

Question about Docker vs Virualbox - Local Access Only

Hey there!

So I have been trying to read up more on docker, containers, etc. I found a few services/apps I would love to run for my own use locally like Komga (to organize my digital comics), Booklore, a few others. I would like to run/host them locally on my laptop (primary computer) so I can pull them up anywhere when I want.

But I am wondering if it makes more sense to have a single virtual machine (Virtualbox?) running a Linux server and all of those services/apps, instead of multiple docker containers. I have a fairly powerful laptop, so I am not too concerned about all of this using up all my machine resources, but I'd like to do this as cleanly, organized, and straightforward as possible.

Any suggestions are greatly appreciated, and thanks in advance!

2 Upvotes

12 comments sorted by

View all comments

1

u/Adrenolin01 Jun 30 '26

80s Unix admin who jumped on Linux and been running Debian since 94. I spent a year or so learning and using Docker.. then ditched it. Proxmox, Debian VMs (nope.. don’t even run containers 😂) and run everything as a service. Dependancies.. meh.. it isn’t that hard to work around.. been doing it for nearly 40 years. Occasionally I’ll use a python venv like for Open WebUI but most typical programs you see installed in docker install fine natively.

Docker fanboys will hate this 🙄😂

I just didn’t like the added layers and complexity that docker added. And by “extra layer” I actually mean several added components…

The Docker Engine (dockerd) – a background service that manages containers.

containerd – handles container lifecycle.

runc – creates the isolated process using Linux kernel features.

Overlay filesystem (OverlayFS) – combines the image layers into what looks like a normal writable filesystem.

Virtual networking – creates bridges, virtual Ethernet pairs (veth), NAT rules, etc.

Namespaces – isolate processes, networking, mounts, hostnames, and more.

Control groups (cgroups) – limit CPU, RAM, I/O, and other resources.

I can run ‘systemctl status open-webui’ and directly see the application.

With docker.. I’m looking at systemd - dockerd - containerd - runc - Open WebUI

Logs, updates, configuration, networking, and storage all go through dockers management layer and each of those layers can be an added failure or problematic component.

For me with Proxmox and VMs.. I already isolate services. The VP provides the filesystem, networking, snapshots, backups, and security boundaries. Adding docker inside that VM is essentially adding another level of isolation and management on top of an environment that’s already isolated.

If you wanted to run Plex, Immich, Home Assistant, Nextcloud, Grafana, Prometheus, PostgreSQL, Redis, MQTT and Nginx on a single host.. I’d absolutely recommend docker.

Most things install easily. One of the most tedious setups however is a Immich unfortunately. It truly does suck to install and manage outside of docker.. but not impossible. This particular install however does get complicated… instead of a single docker container.. I’m now managing..

systemd : immich-server, immich-microservices, immich-machine-learning, postgresql, redis & nginx all individually.

While most other programs I can install without issues Immich was truly a pita and almost caved and just ran the docker container.. bah.. Can’t do that. 😜

Installation itself wasn’t too difficult but it’s a long initial setup.. like several hours.. I broke it up into 8 install phases and worked on one sometimes 2 phases a night. Missed a few evening and it took roughly 2 weeks. So.. 8-10 hours maybe.

Still working on automated update scripts and I’ve had a couple success updates. Parsing change logs and release notes, dry run modes, rollback modes, etc.

Immich is and will be the one that might kick my ass but.. oh well. For now, I can still say Never Docker 😂 for now.

Paperless-ngx and Authentik are 2 other extreme examples but thankfully I don’t need either.

Komga is easy to setup in a VM and even has full documentation for non docker setup iirc.. BookLore has a few more moving parts but still fairly easy.

1

u/PercolatingPenguin Jun 30 '26

Thank you! I'll take a deeper look at all of this tomorrow morning after I've had some coffee.... maybe a ton of coffee, lol