Documentation · SoftActivate Licensing Server

Install

Installation has four steps: run the setup generator, answer its questions, run the one launch command it emits, and create your admin account. The reference rehearsal for this page, on a clean machine using only the shipped artifacts, reaches an activated license in under a minute of runtime. Budget about ten minutes total for reading and DNS.

1. Run the setup generator

With the release artifacts unpacked (the container image and the setup tool):

# interactive: answers a dozen questions, writes the install kit to ./sws-install
node scripts/onprem-setup

# or non-interactive, driven by SWS_SETUP_* environment variables
node scripts/onprem-setup --yes

The generator asks the following, in order. Every answer has a sensible default.

Prompt Notes
Hostname The name your products and browsers will use.
Topology all (one container; start here) or separated (hardened deployments).
TLS mode byo (bring your certificate), acme (automatic issuance), or internal (configuration).
Account name Shown in the console.
First admin email The sign-in step 3 creates.
Email mode smtp (host, port, credentials, from address) or log (emails written to the log; fine for evaluation).
Stripe / PayPal Leave off for now and enable later (payments).
External MongoDB URI Leave empty to use the embedded database (a reasonable default to start with).
PKI passphrase Leave empty to have one generated for you; it protects your signing keys at rest (certificates and keys).

2. What lands in sws-install/

  • config.json: the server configuration (file mode 0600; it holds secrets).
  • console-config.json: the console's runtime settings.
  • Caddyfile: TLS and routing for your chosen mode.
  • sws.env: the PKI passphrase and role, kept out of the config proper (0600).
  • run.sh: the one launch command. It names the container sws-licensing, mounts the two persistent volumes (data and PKI keys), and publishes the right ports.
  • sws-licensing.container: a systemd Quadlet unit, for hosts that should restart the appliance automatically.
  • NEXT-STEPS.txt: your install's specific to-dos, including DNS records, webhook URLs, the firewall table, the exact create-admin command, and a backup reminder.

3. Launch and create your admin

cd sws-install

# the generated one-command launch (podman or docker; 4 GB, persistent volumes,
# selective port publishing per your topology)
./run.sh

# health: the container's built-in composite healthcheck
podman inspect --format '{{.State.Health.Status}}' sws-licensing
# one-time: create (or repair) the first console administrator; prints a
# temporary password ONCE - your install kit's NEXT-STEPS.txt carries the exact
# command for your setup
podman exec -it sws-licensing node /opt/sws/server/server.js create-admin you@example.com

Sign in at your hostname with the printed one-time password. First admin and sign-in covers the credential rules and bringing your own identity provider.

4. Then, in the console

The flow from here matches the cloud service's getting started guide: license template, product, license. The one difference is that your products embed this server's root certificate, downloaded from Settings → Deployment certificates (certificates and keys). Point the SDK's endpoint at your hostname and activate.

If you are migrating an existing cloud tenant instead of starting fresh, stop here and contact support - migration is a support-assisted procedure, and the import must run before first boot.