Skip to main content
This command is marked as unstable and may change in future releases.

Command: phala ssh

Syntax

phala ssh [options] [<cvm_id>] [--] [...]

Description

Connect to a CVM via SSH

Arguments

ArgumentDescription
<cvm_id>?CVM identifier (UUID, app_id, instance_id, or name)

Options

OptionDescription
-i, --interactiveEnable interactive mode
-p, --port <value>Gateway port (priority: CLI > phala.toml > 443)
-g, --gateway <value>Gateway domain (priority: CLI > phala.toml > API)
-t, --timeout <value>Connection timeout in seconds (default: 30)
-v, --verboseShow verbose connection details
--dry-runPrint SSH command without executing

Global Options

OptionDescription
-h, --helpShow help information for the current command
--versionShow CLI version
--api-token TOKEN, --api-key TOKENAPI token used for authentication
-j, --json, --no-jsonOutput in JSON format
--api-version <value>API version to use (e.g. 2025-10-28, 2026-01-21)

Pass-through Arguments

All arguments after — are passed directly to ssh. Common options: -i (identity file), -L (local forward), -R (remote forward), -D (SOCKS proxy), -N (no command), -v (ssh verbose). Any trailing arguments are executed as remote command. Note: -o ProxyCommand is blocked.

Examples

  • Connect from phala.toml
phala ssh
  • Connect to CVM
phala ssh app_123
  • Offline mode
phala ssh app_123 -g dstack-pha-prod7.phala.network -p 16185
  • Connect with custom SSH key
phala ssh app_123 -- -i ~/.ssh/custom_key
  • Forward local port 8080 to remote port 80
phala ssh app_123 -- -L 8080:localhost:80
  • SOCKS proxy without remote command
phala ssh app_123 -- -D 1080 -N
  • Execute remote command
phala ssh app_123 -- ls -la /app
  • Connect with verbose output for debugging
phala ssh app_123 -v
  • Print the SSH command without executing
phala ssh app_123 --dry-run -- -L 8080:localhost:80