CoreSight

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:

  1. Verifies the Ubuntu version.
  2. Installs everything the box needs via apt: PostgreSQL, Valkey, FFmpeg, GStreamer, Nginx, and Node.js 24.
  3. Prompts for the first admin account's email and password.
  4. Downloads the latest CoreSight release package and verifies its SHA-256 checksum (a mismatch aborts the install).
  5. 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 --prod

The 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.

On this page