Contains scripts to set up a new ProxMox Debian server.
Find a file
2025-09-23 22:48:06 -05:00
docs docs: refresh repo README and add component guides 2025-09-23 22:48:06 -05:00
bootstrap.sh Fixed whiptail dependency in the bootstrap with a failover. 2025-08-14 03:27:51 -05:00
kuma-checks.json Add disk usage check for Kuma pushes 2025-09-23 22:35:26 -05:00
kuma-push.sh Add disk usage check for Kuma pushes 2025-09-23 22:35:26 -05:00
README.md docs: refresh repo README and add component guides 2025-09-23 22:48:06 -05:00
setup.sh setup: make reruns idempotent 2025-08-14 20:41:21 -05:00

Proxmox Server Setup

Scripts and configuration used to bring new Debian VMs online in a Proxmox cluster and wire them into supporting services. Each component keeps its own focused documentation so you can grab just what you need.

Components

  • Setup Wizard: interactive bootstrap that hardens a freshly cloned Debian template, installs tooling, and wires in NAS shares.
  • Uptime Kuma Push Client: lightweight agent that reports VM health checks to Uptime Kuma using the push API.
  • Future additions: drop new tooling under docs/<component>/README.md and link it here.

Quick Start

  1. Prepare a Debian template on Proxmox with either curl or wget available.
  2. Run the bootstrap on first boot:
    curl -fsSL https://git.jordanwages.com/wagesj45/proxmox-server-setup/raw/branch/main/bootstrap.sh | bash
    
    The helper script will escalate to root if needed, fetch the latest setup.sh, and guide you through hostname, sudo users, SSH keys, updates, and NFS mounts.
  3. Wire monitoring by scheduling kuma-push.sh (eg. via systemd timer or cron) once you configure your checks in kuma-checks.json.

Project Layout

  • bootstrap.sh thin wrapper that always pulls the current setup.sh from Git and runs it as root.
  • setup.sh whiptail-based wizard that applies updates, manages SSH keys, configures optional tooling, and maintains NFS mounts.
  • kuma-push.sh sends heartbeat updates to Uptime Kuma based on the inventory in kuma-checks.json.
  • kuma-checks.json declarative list of HTTP/service/docker/mount/disk checks for the push client.
  • docs/ component documentation; add new READMEs here as the toolkit grows.

Contributing & Maintenance

  • Keep scripts idempotent so they can be re-run safely during template refreshes.
  • When you add features, document the new behaviour in a dedicated docs/<component>/README.md and update the component list above.
  • Run through the setup wizard on a throwaway VM after major changes to confirm the full flow still works.