CLI reference

Run serverless.au <command> --help for full details. Every command that works on account resources accepts --account <slug> to act in a team account (see Accounts & teams).

Account

Command What it does
svl login [--email E] [--code C] [--voucher V] Log in or sign up with an emailed code (and redeem a voucher).
svl logout Forget the stored API key.
svl whoami Your email, current account, role, status and balance.
svl profile Your name, mobile, country and accepted terms. svl profile update --name … changes them.
svl accounts Accounts you belong to (* marks the current one).
svl account use <slug> Switch the current account.
svl account create <slug> Create a team account you own.
svl account show The current account's details.
svl account complete Provide any details still needed before you can run pods.
svl account update --legal-name … --abn … Change business details (owners).
svl account delete <slug> Delete a team account (owners; no pods, volumes or credit).
svl members Members of the current account.
svl members add <email> [--role member|admin|owner] Invite someone.
svl members rm <email> / svl members role <email> <role> / svl members leave Manage membership.
svl invites Pending invites.
svl balance / svl ledger Credit and recent charges.
svl voucher redeem <code> Add a voucher's credit to the current account.

Pods

Command What it does
svl run [flags] IMAGE [CMD…] Run a container. See flags below.
svl ls [-a] Live pods (-a includes stopped ones).
svl inspect <pod> Everything about a pod, as JSON.
svl logs [-f] [-n N] <pod> Output (kept after the pod exits).
svl events <pod> Lifecycle events.
svl stop <pod>… Stop and delete pods.
svl classes Rates and available capacity per region.

svl run flags

Flag Default Meaning
--cpu N 1 vCPUs, 0.25 to 16 in steps of 0.25.
--mem SIZE 1g Memory, e.g. 512m, 4g (256 MB to 64 GB).
--disk SIZE 10g Pod disk, 1 to 200 GB.
-p PORT[/udp] Publish a container port (repeatable).
--private Don't publish -p ports publicly; reach them with svl forward.
-e KEY=VALUE Environment variable (repeatable). -e KEY copies it from your shell.
-v NAME:/path Mount a network volume.
--name NAME pod ID A name you can use instead of the ID.
--region R au-syd Where to run.
-d Run in the background and print the pod ID.
--http PORT Serve this port over HTTPS at https://<name>-<account>.svl.blah.au. See HTTPS & domains.
--health-path PATH /health With --http: a path that must answer 2xx.
--domain D With --http: also serve your own domain.

HTTPS

Command What it does
svl routes HTTPS addresses, backend health and domains.
svl route add <name> <port> [--health-path P] Serve a port of pods named <name> over HTTPS.
svl route rm <name> [--port P] Remove a route and its domains.
svl domains Your domains and their state.
svl domain add <domain> --to <name>[:port] Serve your own domain from a route; prints the DNS record to create.
svl domain check <domain> / svl domain rm <domain> Check DNS now / detach.

Access

Command What it does
svl ssh <pod> [-- CMD] A shell (or one command) inside the container.
svl exec <pod> -- CMD… Run a command, keeping arguments and exit code intact.
svl cp SRC DST Copy files; use POD:/path for the pod side. -r for directories.
svl forward <pod> PORT[:LOCAL] Forward a pod port to localhost.
svl ssh-config An ~/.ssh/config block for plain ssh and VS Code.

Images, keys & storage

Command What it does
svl registry login <host> -u USER [--password-stdin] Store private registry credentials.
svl registry ls / svl registry rm <host> List or remove them.
svl keys ls / svl keys add NAME FILE / svl keys rm ID Your SSH public keys.
svl volumes ls / create NAME / rm NAME Network volumes.