Start here
From an empty server to a running app, in four steps. Everything here works from the dashboard or from a terminal.
ClikDeploy runs your apps on servers you own. The first thing to do is tell it about one.
Bring a machine you already have — AWS, GCP, DigitalOcean, Hetzner, or any VPS — or let ClikDeploy provision one. Connecting installs the agent: a small program that runs on your server and does the actual work of starting and stopping containers. Everything after this step talks to that agent. An SSH key or cloud OAuth is only used to install it in the first place, and to reinstall it if it ever stops responding. Credentials are stored encrypted.
In the dashboard, servers and apps appear as cards on the canvas — the drag-and-drop map of your infrastructure. Add a server there and follow the install step. Or, from a terminal on the server itself:
clikdeploy server connect agent my-server
That prints a one-time code and installs the agent on the machine you ran it on. my-server is just the name the server will show up under — pick anything.
To connect a machine you are not sitting on, give its IP and an SSH private key:
clikdeploy server connect my-server 203.0.113.10 ~/.ssh/id_ed25519
Check it worked with clikdeploy server list.
One command deploys all three kinds of thing: a Git repository, a public Docker image, or an app from the template catalogue. No config file is required.
# the current directory, using its git remote clikdeploy deploy # a public GitHub repository clikdeploy deploy https://github.com/owner/repo # an app by name, resolved from the template catalogue clikdeploy deploy n8n # any Docker image clikdeploy deploy redis:latest
Repositories are built for you — the build logs stream live while it happens. Browse what you can deploy by name with clikdeploy templates list.
Then check on it:
clikdeploy app list clikdeploy app logs my-app -f
-f follows the log as new lines arrive. If something looks wrong, clikdeploy diagnose my-app correlates status, recent events and error lines into one answer.
Point a domain at an app and it gets an HTTPS certificate automatically.
Every deployed app sits behind a reverse proxy on your server, which is what makes a domain resolve to the right container. SSL certificates are included on all plans. Set a domain from the app's panel in the dashboard, or from the CLI:
clikdeploy app domain my-app myapp.example.com clikdeploy app ssl my-app
Point the domain's DNS A record at your server's IP first, or the certificate cannot be issued. You can also connect a Cloudflare account to have ClikDeploy manage DNS records and wildcard certificates for you.
app ssl is a toggle
clikdeploy app ssl my-app flips SSL on if it is off, and off if it is on. It does not take an on/off argument, so running it twice puts you back where you started.Everything above also works from a terminal. The CLI needs Node.js 18 or newer.
# install curl -fsSL https://clikdeploy.com/cli.sh | bash # log in (email and password, or --google / --github) clikdeploy login
clikdeploy doctor is a good first command after logging in: it checks your config, your auth, whether the API is reachable, and what apps and servers it can see.
Next: the CLI reference for install options and the commands you will use daily, or deploying apps for how environment variables, secrets and failed deploys are handled.