Skip to main content

Deploy

Yard ships with Fabric-style scripts: cross-compile locally, install a systemd unit on the host, verify /healthz.

One command

./scripts/ship sus@HOST # quick redeploy
./scripts/ship sus@HOST --full # first install + firewall
./scripts/ship sus@HOST --with-sim # also start yard-simulator
./scripts/ship sus@HOST --dry-run
./scripts/ship sus@HOST --port 18080
Default port

Default lab listen port is 18080 (8080 is often occupied). Override with --port or reuse .deploy-last.

Demo login after bootstrap:

admin@yard.local / yard-admin

What gets installed

PathRole
/usr/local/bin/yardAPI + embedded console
/etc/yard/yard.envListen address, DSN, token files
/var/lib/yard/SQLite DB + ingest/simulator tokens
yard.servicesystemd unit
yard-simulator.serviceOptional included simulator

On hosts that previously ran the Estate rename, ship disables estate.service so Yard can bind the listen port.

Verify

YARD_URL=http://HOST:18080 ./scripts/verify-remote.sh

Checks health, login, overview, assets, connectors, and (when a simulator token is available) the temperature → incident gate (severity policy + runbook attached).

Compose

docker compose up --build
docker compose --profile postgres up --build

Backups

Auto-detects SQLite vs. Postgres from YARD_DATABASE_URL:

./scripts/backup.sh # snapshot to backups/yard-<timestamp>.db|.dump
./scripts/restore.sh backups/yard-....db # saves the current file as *.before-restore first

SQLite uses sqlite3 ... VACUUM INTO — a live, consistent snapshot that doesn't lock out the running server. Postgres uses pg_dump -Fc / pg_restore --clean --if-exists. Every backup run writes a new timestamped file; nothing is ever overwritten.

Logging

Every request is logged as one structured line (method, path, status, duration). Set YARD_LOG_FORMAT=json for machine-parseable output in production; the default is plain text, easier to read in a terminal.

After deploy, useful console paths: Assets (bulk CSV/JSON), Map (clustering), Administration (users, API keys, severity policies). See Console features.