On-Prem Overview

How PacketSafari on-prem installs, stores deployment state, and transitions from onboarding into normal operation.

PacketSafari on-prem is delivered as a host-managed Docker deployment plus a digest-pinned release manifest.

On-prem deployments do not use the SaaS pricing or checkout flow.

Enterprise entitlement

The standard On-Prem Enterprise scope includes one production and one non-production licensed deployment. Each deployment receives its own signed entitlement token and includes:

  • 25 named users;
  • 5,000 weighted Agent units per calendar month;
  • customer-managed capture storage and retention; and
  • use of a customer-managed compatible AI endpoint, credentials, and compute.

A focused standard-model run costs one unit. Fast + verification and a focused strongest-model run cost two; deep investigation on the strongest model costs four. The optional air-gapped release and update channel supplies signed entitlement and install/upgrade bundles for controlled offline transfer. PacketSafari provides application support and upgrade guidance; the customer operates the hosts, network, storage, backups, monitoring, and recovery, so an end-to-end infrastructure uptime commitment is not implied.

The on-prem flow has four parts:

  1. A host operator runs the PacketSafari bootstrap script.
  2. The Python installer validates the signed license token, installs the local operator tooling, and renders the deployment compose file.
  3. PacketSafari starts in onboarding mode so the operator can finish deployment settings in the terminal TUI or the fallback web UI.
  4. Future upgrades are host-driven with explicit release manifests, backups, and rollback support.

Runtime layout

By default, the installer manages state under /opt/packetsafari on the host:

  • state/ stores deployment state, the active release manifest, the target release manifest, the installed license token, and helper status.
  • env/ stores the generated runtime.env and host sizing env.
  • compose/ stores the rendered docker-compose.onprem.yml and optional sizing override.
  • backups/ stores upgrade snapshots used by rollback.

This host runtime root is bind-mounted into the PacketSafari containers at /storage/onprem. That keeps the host Python operator tooling and the running backend aligned on the same deployment state files.

Onboarding mode

A fresh install starts with PACKETSAFARI_ONPREM_ONBOARDING_ENABLED=true (legacy alias: ON_PREM_ONBOARDING_MODE=true).

In onboarding mode:

  • The deployment is marked as Onboarding in the admin deployment page.
  • The Python operator TUI exposes a native onboarding workflow, and the web UI still exposes the fallback onboarding flow.
  • The first administrator account is created manually afterward from inside the backend container.
  • Finalizing onboarding writes the managed runtime env and switches the deployment to normal mode on the next restart.

Admin pages

On-prem administrators should use:

  • Deployment status to review installed release status, license status, and target release readiness.
  • Update operations to copy the supported host-side upgrade and rollback commands.

The web UI does not run privileged deployment actions itself. Install, upgrade, and rollback remain host-side operations.

For host command details, see PacketSafari Ops CLI. For guided lifecycle workflows, see Install, Upgrade, and Rollback.

AI anonymization policy

On-prem deployments can enforce anoncap anonymization before AI usage:

  • By default, Agent and Copilot runs are blocked for non-anonymized captures.
  • Admins can enable non-anonymized AI with the ON_PREM_ALLOW_NON_ANON_AI feature flag.

See On-Prem AI anonymization policy for details.

If the deployment uses a local or on-prem model server outside the PacketSafari container network, see Local models and external AI approval.

For terminal or automation-driven Agent runs, see Headless Agent API and CLI.

For a destination-by-destination inventory of outbound network traffic initiated by the application runtime, see External communications.