A self-hosted subnet and network management web application — built with Rust + SQLite, packaged as a single zero-dependency Docker image.
Manage your IP subnets, plan VLSM allocations, inject Docker Compose networks with static IPs, and keep a full audit log — all from a clean dark-mode UI.
docker-compose.yml and inject a subnet with static IPs per service
docker run -d \
--name subnet-manager \
-p 8080:8080 \
-v subnet_data:/data \
certyiknofetch/subnetra:latest
Then open http://localhost:8080 — you will be prompted to create your admin account on first launch.
services:
subnet-manager:
image: certyiknofetch/subnetra:latest
container_name: subnet-manager
restart: unless-stopped
ports:
- "8080:8080"
volumes:
- subnet_data:/data
environment:
DATABASE_URL: sqlite:/data/subnets.db
HOST: 0.0.0.0
PORT: "8080"
ALLOWED_ORIGINS: "*"
volumes:
subnet_data:
| Variable | Default | Description |
|---|---|---|
DATABASE_URL | sqlite:/data/subnets.db | SQLite database path |
HOST | 0.0.0.0 | Bind address |
PORT | 8080 | HTTP port |
ALLOWED_ORIGINS | * | CORS allowed origins (comma-separated) |
RUST_LOG | subnet_manager=info | Log level |
uid=65532) inside a distroless containerAll data is stored in a single SQLite file at /data/subnets.db. Mount a named volume or host path to persist across container restarts.
# Backup
docker cp subnet-manager:/data/subnets.db ./subnets-backup.db
# Restore
docker cp ./subnets-backup.db subnet-manager:/data/subnets.db
linux/amd64, linux/arm64| Tag | Description |
|---|---|
latest | Latest stable release |
1.0 | Initial release |
Content type
Image
Digest
sha256:2d31b4838…
Size
4 MB
Last updated
6 months ago
docker pull certyiknofetch/subnetra