← ClaudeAtlas

uncloudlisted

Use when managing an Uncloud cluster with the `uc` CLI — deploying services, configuring Caddy ingress, adding static proxy routes for non-cluster devices, publishing ports, scaling, inspecting logs, or managing machines and volumes. Covers the CLI command surface, Compose extensions (x-ports, x-caddy, x-machines), port-publishing syntax, and internal service DNS.
Mixard/fable-pack · ★ 1 · DevOps & Infrastructure · score 74
Install: claude install-skill Mixard/fable-pack
# Uncloud Cluster Management Reference for the `uc` CLI — a decentralised self-hosting platform using Docker containers, WireGuard mesh networking, and Caddy reverse proxy. ## How It Works Uncloud runs Docker services across peer machines connected by a WireGuard mesh. Each machine is an equal cluster member; services communicate on the overlay network and Caddy runs globally to terminate public HTTP/HTTPS traffic. Compose files can use Uncloud extensions for ingress, placement, and generated Caddy configuration, while the `uc` CLI handles image distribution, scheduling, scaling, logs, and cluster state. ## Core Concepts - **No central control plane** — all machines are equal peers connected by WireGuard - **Caddy** runs as a global service on every machine; auto-obtains TLS from Let's Encrypt - **Overlay network** — services communicate via `10.210.0.0/16` by default; DNS provided inside the mesh - **Caddyfile is autogenerated** — never edit it directly; use `x-caddy` / `--caddyfile` instead ```bash uc machine init user@host --name machine-1 uc service run --name web -p app.example.com:8080/https nginx:latest uc deploy ``` ## CLI Quick Reference ### Machines | Command | Purpose | |---------|---------| | `uc machine init user@host` | Bootstrap first machine / new cluster | | `uc machine add user@host` | Join machine to existing cluster | | `uc machine ls` | List machines | | `uc machine update NAME --public-ip IP` | Update public IP for ingress | | `uc machine rm NAM