Show HN: Docker Compose for VM's

Geeks Lose It Over ‘Docker for Virtual Machines’ as Old Tools Get Roasted

TLDR: A new tool, holos, promises a simple one-file way to spin up multiple virtual machines like Docker does for apps, and the crowd is buzzing about ditching older, clunky setups. Commenters are torn between excitement, nostalgia for old tools, and demanding it work with their beloved home‑lab platforms.

A new project called holos just dropped, promising “Docker Compose, but for full virtual machines,” and the comment section instantly turned into a mix of excitement, nostalgia, and gentle tool-shaming. The idea: instead of juggling complicated setup files and clunky interfaces, you write one simple recipe for several fake computers and spin them up with a single command. To non‑tech folks, think: one shopping list that builds your whole mini‑data‑center at home.

One user immediately asked if it could hook into Proxmox, the home‑lab darling, basically translating to: “Cool toy, but will it play with my existing kingdom?” Another wanted to ditch their current setup entirely, hoping they could just import all their virtual machines and walk away from their old tools like a bad breakup. Then came the nostalgia bomb: someone sighed that this made them “think about Vagrant again,” name‑dropping an older tool like an ex you’re kind of embarrassed you miss.

Power users jumped in flexing: one bragged about having built something similar with other tools, while another compared holos to a project that runs Windows and macOS from simple files, probing whether holos has bigger ambitions. The mood? Half “take my money,” half “prove you’re not just another weekend project,” all wrapped in jokes, throwbacks, and quiet shade at the old way of doing things.

Key Points

  • holos provides a compose-like YAML format to define and run multi-VM stacks on a single host using KVM/QEMU.
  • Each service is a separate VM with its own kernel boundary, qcow2 overlay, and cloud-init seed; no libvirt or XML is required.
  • The CLI supports lifecycle commands, console access, SSH exec, logs, validation, image pulls, device listing, and systemd integration.
  • Compose semantics include depends_on, healthchecks gating startup, replicas, port mappings, bind/named volumes, and configurable stop_grace_period.
  • Graceful shutdown uses QMP system_powerdown with timeouts; persistent named volumes attach as virtio-blk with stable IDs and are auto-formatted via cloud-init.

Hottest takes

"Wonder could it be modified to work with proxmox?" — tiernano
"I’d be keen to migrate my VMs to this compose based system if it was a simple import job" — spidermonkey23
"sure has been awhile since i thought about vagrant" — johnny22
Made with <3 by @siedrix and @shesho from CDMX. Powered by Forge&Hive.