Installation overview¶
Umbryx is self-hosted and containerized: a single Docker Compose stack (PostgreSQL, Redis, backend, frontend, nginx) per installation. Both editions deploy the same way; EE additionally needs licensed images and a license token.
Requirements¶
Verified requirements (what the stack actually consumes):
| Component | Requirement |
|---|---|
| OS | Any Linux host running Docker; the reference deployment is Debian/Ubuntu |
| Docker | Docker Engine + Docker Compose v2 |
| Ports | One published HTTP port (default 3000); inbound SSH to your attacker machines, not to Umbryx |
| Storage | A persistent directory for /data (uploads, encryption keys, audit JSONL, DB volume) |
| Databases | PostgreSQL 16 and Redis 7.2 ship as compose services — nothing external required |
| Attacker machine (optional but expected) | A Linux box reachable over SSH with your tooling installed (nmap, nuclei, netexec, httpx, ffuf, impacket, …) |
Practical recommendation for a small team: 2 CPU / 4 GB RAM. This is a recommendation, not a tested minimum.
Paths through this section¶
- Umbryx Core installation — from source, single node
- Umbryx EE installation — licensed images, activation, HA pointers
- Verification — health checks and first login
Two ways to install¶
- Automated installer —
./install.shwrites.env, offers modes (single-node; HA modes appear only in the EE tree), can run with--dry-runorUMBRYX_INSTALL_NO_TUI=1. - Manual —
cp .env.example .env, edit,docker compose up -d --build. Documented in Core installation.
Both produce the same result; the installer is the wizard over the same compose file.
What is NOT installed by Umbryx¶
Umbryx Core never provisions infrastructure and never executes tools locally: scans and commands run on your attacker machines over SSH. EE deploys attack infrastructure (C2, redirectors, …) only where you explicitly configure providers.