Usage
Connection Methods
You can connect to the remote machine using different schemas:ssh://user@host- Use built-in SSH library (default, no prefix required)ssh+cli://user@host- Use system SSH command (supports ProxyJump, SSH config)
Flags
Assign a name to the machine. If not specified, a name will be generated.
--no-caddy
Don’t deploy Caddy reverse proxy service to the machine.
--no-install
Skip installation of Docker, Uncloud daemon, and dependencies on the machine. Assumes they’re already installed and running.
Public IP address of the machine for ingress configuration.
auto- Automatic detectionnoneor blank - Disable ingress on this machine- IP address - Specify an explicit IP
Path to SSH private key for remote login (if not already added to SSH agent).Default:
~/.ssh/id_rsaVersion of the Uncloud daemon to install on the machine.
-y, --yes
Auto-confirm prompts (for example, resetting an already initialized machine). Should be explicitly set when running non-interactively, like in CI/CD pipelines.Can also be set with the
UNCLOUD_AUTO_CONFIRM environment variable.Examples
Add a machine to the cluster
Add a machine with a custom name
Add a machine without Caddy
Useful if you only want to run backend services on this machine:Add a machine using system SSH
This is useful when you need to use SSH config features:Add a machine with no public IP
For machines that won’t serve public traffic:What Happens When Adding a Machine
- SSH Connection - Connects to the remote machine via SSH
- Installation - Installs Docker and the Uncloud daemon (unless
--no-installis used) - Cluster Join - Joins the machine to the existing cluster
- WireGuard Setup - Configures WireGuard mesh networking with other machines
- Caddy Deployment - Deploys Caddy if the service already exists (unless
--no-caddyis used) - DNS Update - Updates DNS records to include the new machine’s public IP
Output
Related Commands
uc machine init- Initialize a new clusteruc machine ls- List machines in the clusteruc machine rm- Remove a machine from the cluster
