CLI reference
Every seylo command and flag, generated from the binary's own help output.
One binary, seylo, is the node agent (seylo agent, started by systemd), the node's command line and the command line for your laptop. Release builds exist for Linux, macOS and Windows; see Command line for installing it on a laptop.
Global flags
Every command takes these:
--log-format string log format: text or json (default "text")
--log-level string log level: debug, info, warn or error (default "info")
--profile string saved panel login to use (laptop commands)seylo <command> --help prints the same help as below.
Node commands
Run these as root on a node. They talk to the local agent through its socket in /var/lib/seylo/run/ and to systemd. Off Linux they answer that they run on a Linux server.
seylo agent
Run the node agent (started by systemd)
Usage:
seylo agent [flags]
Flags:
--can-build allow builds on this node
--force join again although this node already joined a panel
-h, --help help for agent
--insecure accept a plain http:// panel URL on another host (the agent protocol is then unencrypted)
--join string join this panel before starting (with --token)
--name string node name shown in the panel (default: the hostname)
--pin string panel certificate pin (sha256:<hex>) for a panel without a public certificate
--token string single-use join token from the panel's Add node dialog
--trust-on-first-use pin whatever certificate the panel presents on the first connectionseylo health
Run the node health checks here
Usage:
seylo health [flags]
Flags:
-h, --help help for healthseylo join
Join this node to a panel and start the agent
Usage:
seylo join <panel-url> --token <token> [flags]
Flags:
--can-build allow builds on this node
--force join again although this node already joined a panel
-h, --help help for join
--insecure accept a plain http:// panel URL on another host (the agent protocol is then unencrypted)
--name string node name shown in the panel (default: the hostname)
--no-start only write the config
--pin string panel certificate pin (sha256:<hex>) for a panel without a public certificate
--token string single-use join token from the panel's Add node dialog
--trust-on-first-use pin whatever certificate the panel presents on the first connectionseylo logs
Without arguments, shows the agent's own journal on this node.
With a service, shows that service's logs through the panel (works from any machine after seylo login).
Usage:
seylo logs [project/service] [flags]
Flags:
-f, --follow keep printing new lines
-h, --help help for logs
-n, --tail int lines of history to show (default 200)seylo panel
Manage the panel running on this node
Usage:
seylo panel [command]
Available Commands:
logs Show the panel service's logs
setup-link Print a new one-time link to create the owner account
start Start the panel service
status Show the panel service's state, version and URL
Flags:
-h, --help help for panelseylo panel logs
Show the panel service's logs
Usage:
seylo panel logs [flags]
Flags:
-f, --follow keep printing new lines
-h, --help help for logs
-n, --tail int lines of history to show (default 200)seylo panel setup-link
Writes a new setup token for the panel on this node and restarts the panel so it takes it (the panel imports the token on start while no owner exists). The link works for an hour. After the owner exists, sign in normally instead.
Usage:
seylo panel setup-link [flags]
Flags:
-h, --help help for setup-linkseylo panel start
Start the panel service
Usage:
seylo panel start [flags]
Flags:
-h, --help help for startseylo panel status
Show the panel service's state, version and URL
Usage:
seylo panel status [flags]
Flags:
-h, --help help for statusseylo restart
Restart the agent service (apps keep running)
Usage:
seylo restart [flags]
Flags:
-h, --help help for restartseylo start
Start the agent service
Usage:
seylo start [flags]
Flags:
-h, --help help for startseylo status
Show the agent, its panel connection and the services on this node
Usage:
seylo status [flags]
Flags:
-h, --help help for statusseylo troubleshoot
Collects versions, health checks, the agent's state and logs, Docker and the Seylo containers into a Markdown report with secrets, tokens and email addresses removed, uploads it and prints a link to share. --dry-run prints the report instead.
Usage:
seylo troubleshoot [flags]
Flags:
--dry-run print the redacted report instead of uploading it
-h, --help help for troubleshoot
--include-service-logs add the last lines of every service's logs
--keep-emails keep email addresses (removed by default)
--print same as --dry-run
--redact-ips also replace public IP addressesPanel commands
Run these on a laptop, in CI or on a node, after seylo login or with SEYLO_PANEL_URL and SEYLO_TOKEN set. They use the panel's HTTP API with an API key. Services are named <project>/<service>, a bare name when it is unique, or an id. See Command line.
seylo deploy
Deploy a service from its configured source
Usage:
seylo deploy <project/service> [flags]
Flags:
-h, --help help for deploy
--wait follow the deploy until it finishes (default true)seylo env
Read and change a service's environment
Usage:
seylo env [command]
Available Commands:
list Print the environment as a .env file
set Set variables
unset Remove variables
Flags:
-h, --help help for env
--no-deploy change the variables without redeployingseylo env list
Print the environment as a .env file
Usage:
seylo env list <project/service> [flags]
Flags:
-h, --help help for listseylo env set
Set variables
Usage:
seylo env set <project/service> KEY=VALUE... [flags]
Flags:
-h, --help help for setseylo env unset
Remove variables
Usage:
seylo env unset <project/service> KEY... [flags]
Flags:
-h, --help help for unsetseylo login
Signs in to a panel and saves an API key in ~/.config/seylo/config.json. By default it opens the panel's approval page in your browser: check the code, pick what the key may do and approve. With --token or --token-stdin it saves an API key you created under Settings > API keys instead.
Usage:
seylo login <panel-url> [flags]
Flags:
-h, --help help for login
--no-browser print the approval link instead of opening a browser
--profile string name for these saved credentials (default "default")
--token string API key (default: approve the sign-in in the browser)
--token-stdin read the API key from standard inputseylo logout
Forget the saved API key
Usage:
seylo logout [flags]
Flags:
-h, --help help for logoutseylo tunnel
Open temporary access to a service
Usage:
seylo tunnel [command]
Available Commands:
cloudflare Turn a service's Cloudflare tunnel on or off
expose Open a service port to your IP for a limited time
Flags:
-h, --help help for tunnelseylo tunnel cloudflare
Turn a service's Cloudflare tunnel on or off
Usage:
seylo tunnel cloudflare <project/service> on|off [flags]
Flags:
-h, --help help for cloudflareseylo tunnel expose
Open a service port to your IP for a limited time
Usage:
seylo tunnel expose <project/service> [flags]
Flags:
--for duration how long the port stays open (5m to 24h) (default 1h0m0s)
--from string source address allowed in (default: your public IP)
-h, --help help for expose
--port uint32 container port to exposeOther commands
seylo version
Print the version (and the running agent's, on a node)
Usage:
seylo version [flags]
Flags:
-h, --help help for version