Remote CLI
Gordon management commands use the authenticated daemon API. The default local transport is HTTP over the owner-only Unix socket; a configured remote uses authenticated HTTP/TLS.
Configure a remote
Store the server URL and credentials with Gordon's remote configuration commands. Avoid placing tokens directly in shell history, scripts, or repository files.
Verify connectivity:
gordon daemon status --remote https://gordon.example.com --token "$GORDON_TOKEN"
App management
The app name is the canonical workload identity. Domains are routing addresses declared by the manifest.
gordon apps apply --file app.toml --remote https://gordon.example.com --token "$GORDON_TOKEN"
gordon apps list --remote https://gordon.example.com --token "$GORDON_TOKEN"
gordon apps show APP --remote https://gordon.example.com --token "$GORDON_TOKEN"
gordon apps deploy APP --remote https://gordon.example.com --token "$GORDON_TOKEN"
gordon apps logs APP --service SERVICE --remote https://gordon.example.com --token "$GORDON_TOKEN"
Lifecycle commands use the same transport:
gordon apps stop APP
gordon apps start APP
gordon apps restart APP --service SERVICE
gordon apps remove APP
Backups
Backup targets come from the ACTIVE app manifest and use app, service, and resource identity:
gordon backups run APP --service SERVICE --database DATABASE
gordon backups volume run APP --service SERVICE --volume VOLUME
gordon backups status
gordon backups volume status
Logs
gordon daemon logs streams daemon process logs. Workload logs use the app command:
gordon daemon logs --remote https://gordon.example.com --token "$GORDON_TOKEN"
gordon apps logs APP --service SERVICE --remote https://gordon.example.com --token "$GORDON_TOKEN"
Security
- Use HTTPS for remote access.
- Scope and rotate tokens.
- Keep the local admin socket owner-only.
- Never expose the local socket through a public proxy.
- Prefer environment variables or a protected credential store over literal tokens.