Getting Started
This guide walks you through installing the Detectify Internal Scanner using the packaged installer. The entire process takes about 5 minutes.
Make sure you have your four credentials ready before starting: license key, connector API key, registry username, and registry password.
Download the installer
Download the detectify-scanner script to your Linux host and make it executable:
curl -sSL https://github.com/detectify/internal-scanning-installer/releases/latest/download/detectify-scanner -o detectify-scanner
chmod +x detectify-scannerRun the installer
Run the installer with sudo:
sudo ./detectify-scanner installThe installer will:
- Run pre-flight checks — verifies system requirements, network connectivity, and dependencies
- Prompt for credentials — enter your license key, connector API key, registry username, and registry password
- Validate credentials — confirms registry and license credentials are valid before proceeding
- Install k3s — provisions a lightweight Kubernetes cluster
- Deploy the scanner — installs all scanner components via Helm
- Wait for readiness — confirms all pods are healthy
Verify the installation
Once installation completes, you’ll see a success message with the scanner API URL:
Installation complete!
Scanner is running. All pods are healthy in the 'scanner' namespace.
Configuration saved to /etc/detectify-scanner/scanner.env
Scanner API: http://<your-host-ip>:30000
Use this URL to configure your CI/CD pipelines or to start a scan manually.You can also check the status at any time:
sudo detectify-scanner statusThe installer copies itself to /usr/local/bin/detectify-scanner during installation, so you can run commands from anywhere after installing.
What Gets Installed
The installer provisions the following on your host:
| Component | Description |
|---|---|
| k3s | Lightweight Kubernetes distribution (single-node cluster) |
| scan-scheduler | Receives scan requests and queues them in Redis |
| scan-manager | Picks up jobs and creates ephemeral scan worker pods |
| chrome-controller | Manages headless Chrome instances for browser-based scanning |
| redis | In-cluster data store for job state |
All components run in a scanner Kubernetes namespace. For details on how these components interact and scale, see Scaling & Capacity Planning.
Next Steps
- Available commands — Manage your scanner with status, logs, restart, and more
- Troubleshooting — Common issues and solutions
- Security & Privacy — How the scanner handles data and network traffic