this post was submitted on 04 Jul 2023
93 points (97.9% liked)

Selfhosted

39893 readers
358 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 1 year ago
MODERATORS
 

I'm thinking about starting a self hosting setup, and my first thought was to install k8s (k3s probably) and containerise everything.

But I see most people on here seem to recommend virtualizing everything with proxmox.

What are the benefits of using VMs/proxmox over containers/k8s?

Or really I'm more interested in the reverse, are there reasons not to just run everything with k8s as the base layer? Since it's more relevant to my actual job, I'd lean towards ramping up on k8s unless there's a compelling reason not to.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 4 points 1 year ago (3 children)

Why not both?

Like many others here, I went with Proxmox as the base host. But most of my services are Docker containers , running in a "dockerVM" on top of Proxmox.

Having Proxmox as the base is just so flexible, which is very handy for a homelab.

  • For instance I set up a VM with Wireguard back when Wireguard had only just been merged in to the mainline kernel, without affecting the other
  • You can have separate VM for docker testing, and docker production
  • You can run multiple VMs for multiple Kubernetes hosts, to try it out and get your feet wet without affecting the "production" containers
  • If you get additional servers, you can just migrate those Kubernetes VMs
  • You can run Windows VM should you need, and BSD (and thus pfSense/opensense or TRUE AS)
  • You can run a full graphical environment if you want
  • Proxmox has easy setup for firewalls for each VM
  • I have a VM running a legacy bare metal system (from the same server now running proxmox) that I've been slowly de-commissioning piece by piece
[–] [email protected] 1 points 1 year ago (2 children)

What is your system backup solution like? Having it separated seems convenient for that since you can just back up the vm storage somewhere I'm guessing?

[–] [email protected] 2 points 1 year ago

Not OP, but similar setup (Proxmox with docker on a VM). The VM (plus a few LXCs) are backed up daily using the backup built into Proxmox, and those backups are mirrored to the cloud with rclone.

[–] [email protected] 1 points 1 year ago

Proxmox Backup Server: Incremental de-duplicateed image backups of the whole VM, with possibility of individual file restore. It's like magic

For the legacy bare metal system I have rsnapshots of the data folder (set it up ages ago, and never changed it)

An nginx LXC container has a single static backup of the container, with the nginx config file stored in a git repo