Installation
Install CoreSight on a fresh Ubuntu server with a single command.
Requirements
- A fresh Ubuntu Server 24.04 or 26.04 install (x86_64) with a sudo-capable account. Other Ubuntu versions produce a warning; other distributions are not supported.
- Network access from the server to your cameras (same LAN, or routed — see Cameras for routed-network discovery).
- A static IP or DHCP reservation for the server is strongly recommended.
- Disk space sized for your retention needs — recording storage is usually the bottleneck. As a rough guide, one 1080p camera at ~2 Mbps needs about 650 GB for 30 days of continuous recording.
- Accurate time. Recording timelines depend on it; keep the host time-synchronized (the installer's dependencies include standard Ubuntu time sync).
The one-line install
Run this on the server:
curl -fsSL https://coresightvms.com/install.sh | sudo bash -s -- --prod--prod is the production mode: it creates a non-root system user for the services, enables the firewall (default-deny, allowing only SSH and the web ports — your SSH session is allowed before the firewall turns on, so you are never locked out), and turns on unattended security upgrades.
What the installer does
The installer is idempotent — safe to re-run, and re-running it later is also how you upgrade. It:
- Verifies the Ubuntu version.
- Installs everything the box needs via apt: PostgreSQL, Valkey, FFmpeg, GStreamer, Nginx, and Node.js 24.
- Prompts for the first admin account's email and password.
- Downloads the latest CoreSight release package and verifies its SHA-256 checksum (a mismatch aborts the install).
- Installs the package, generates secrets, sets up the database and a self-signed TLS certificate, and starts the services.
On a terminal you see a live progress bar. The full command log is written to /var/log/coresight-install.log; on failure the last 40 lines are printed automatically.
Admin account creation
Interactively, the installer prompts for the admin email and password. For headless or scripted installs, pass them as flags:
curl -fsSL https://coresightvms.com/install.sh | sudo bash -s -- --prod \
--admin-email admin@example.com --admin-password 'a-strong-password'You can also set CORESIGHT_ADMIN_EMAIL and CORESIGHT_ADMIN_PASSWORD as environment variables. If neither prompts nor flags supply credentials, the installer generates a random password and prints it once — save it. The admin is created on the service's first boot; once it exists, re-running the installer never overwrites it.
Offline install
For servers without internet access, build a self-contained bundle (installer plus package) on a connected machine, copy it over, and run it:
tar xzf coresight-bundle_<version>_amd64.tar.gz && cd coresight-bundle
sudo ./install.sh --prodThe installer picks up the bundled package automatically. You can also point it at a package file directly with --deb ./coresight_<version>_amd64.deb.
AI analytics (opt-in)
AI analytics (object detection and the rest of the AI features) are opt-in at install time:
curl -fsSL https://coresightvms.com/install.sh | sudo bash -s -- --prod --ai--ai stages the inference runtime, a detection model, and the AI-enabled analyzer. Offline bundles built with AI assets enable this automatically. Without --ai, everything else works normally — the analytics feature simply stays dormant.
Useful extra flags: --version <tag> pins a specific release, --deb <path> installs a local package file, and --no-firewall / --no-auto-upgrades skip the production hardening steps if you manage those yourself.
First login
When the installer finishes, browse to https://<server-address>/ and log in with the admin email and password from the install. The box ships with a self-signed certificate, so your browser shows a certificate warning on first visit — this is expected; you can replace the certificate with your own later.
From here, continue with First steps.