No description
  • Shell 69.2%
  • Python 30.8%
Find a file
2026-10-09 15:14:44 +02:00
.forgejo/workflows Add Workflow 2026-10-09 13:51:55 +02:00
image first version 2026-10-09 13:50:32 +02:00
rootfs/etc Add systemd service files for NetBox Request Queue Worker and WSGI Service 2026-10-09 14:30:22 +02:00
tests first version 2026-10-09 13:50:32 +02:00
app.func Update app_install and app_configure functions to improve configuration symlink handling and localization of download message 2026-10-09 15:14:44 +02:00
CHANGELOG.md first version 2026-10-09 13:50:32 +02:00
ct.sh first version 2026-10-09 13:50:32 +02:00
iac.json first version 2026-10-09 13:50:32 +02:00
packages.list first version 2026-10-09 13:50:32 +02:00
README.md first version 2026-10-09 13:50:32 +02:00
rootfs.perms first version 2026-10-09 13:50:32 +02:00
vm.sh first version 2026-10-09 13:50:32 +02:00

iac-netbox

IP Address Management (IPAM) and Data Center Infrastructure Management (DCIM) with NetBox as an LXC container or VM on Proxmox VE. Part of iac.

Features

  • Repeatable Deployment: Powered by iac-core with automated setup of Python venv, PostgreSQL client libraries, Redis, and Gunicorn.
  • Clean Release Management: Versions are isolated in /opt/netbox-x.y.z/ and swapped atomically via /opt/netbox symlink.
  • Persistent Storage: Uploads (media), custom scripts (scripts), and reports (reports) reside safely outside the app directory in /var/lib/netbox/.
  • Automated Firewalling: Port 8000 (Web UI) is managed directly via iac.json.

Installation (on the Proxmox Node)

bash -c "$(curl -fsSL [https://iac.heyer.systems/netbox/ct.sh](https://iac.heyer.systems/netbox/ct.sh))"   # LXC
bash -c "$(curl -fsSL [https://iac.heyer.systems/netbox/vm.sh](https://iac.heyer.systems/netbox/vm.sh))"   # VM

For non-interactive automation, supply IAC_NONINTERACTIVE=1 along with var_* environment variables. The easiest way to generate these is through the web form at:

https://iac.heyer.systems/apps/netbox/

Custom Configuration

The primary configuration is managed by iac. Place your local customizations (such as a custom SECRET_KEY, database settings, or LDAP configurations) into the override file so they survive updates:

/etc/netbox/configuration.local.py

Maintenance & Updates (inside the guest)

Fetches the latest NetBox release from GitHub, applies database migrations, runs collectstatic, and restarts services safely:

update

Self-Test (inside the guest)

Validates the Python virtualenv, Gunicorn processes, Django system health, and the RQ worker:

bash /var/lib/iac/src/core/bin/iac-smoke