Damien a6a3b421c5 Add cleanup for temporary directory
Previously the temporary directory was removed via the RETURN trap
but this could be bypassed if the script exited early. Now we
explicitly clean up the directory in all exit paths.
2026-05-26 17:42:24 +02:00
2026-05-12 15:17:34 +02:00

infra-scripts

Public infrastructure deployment scripts designed to be executed directly via curl | bash.

Philosophy

These scripts automate the deployment of personal infrastructure components. They are:

  • Self-contained: No external dependencies beyond standard Debian packages
  • Idempotent-ish: Safe to re-run (where possible)
  • Curl-friendly: Designed for one-liner deployment from a fresh server
  • Multi-OS: Supports Debian and Alpine-based deployments
  • Loopback by default: Services bind to 127.0.0.1; Tailscale handles the reverse proxy and TLS termination
  • Log hygiene: Every long-running service ships with a logrotate config (no unbounded log files)
  • Console auto-login: Proxmox LXCs are configured for root auto-login on tty1 (fast pct enter and Web UI shell access)
  • Keep it simple: One script per service, plain bash, no frameworks — readability over cleverness

Available Scripts

Script Description Usage
proxy/install.sh Reverse proxy with Tailscale + Nginx Proxy Manager curl -fsSL https://gitea.arnodo.fr/Damien/infra-scripts/raw/branch/main/proxy/install.sh | bash
netlab/install.sh Network lab with ContainerLab curl -fsSL https://gitea.arnodo.fr/Damien/infra-scripts/raw/branch/main/netlab/install.sh | bash
seedbox/install.sh ISO seedbox with Transmission + NFS NFS_SERVER=<nas> curl -fsSL https://gitea.arnodo.fr/Damien/infra-scripts/raw/branch/main/seedbox/install.sh | bash
gitea-runner/install.sh Gitea Act Runner on Alpine LXC (Proxmox) bash -c "$(curl -fsSL https://gitea.arnodo.fr/Damien/infra-scripts/raw/branch/main/gitea-runner/install.sh)"

Requirements

  • Fresh Debian 12/13 installation (proxy, netlab, seedbox) or Proxmox VE host (gitea-runner)
  • User with sudo privileges (do not run as root) — except gitea-runner which runs as root on Proxmox
  • Internet access
Description
Public infrastructure deployment scripts - curl-friendly automation
Readme 481 KiB
Languages
Shell 100%