Server Setup
While a new server is being installed, opening it in the Console shows a dedicated Setup screen instead of the usual management view. This screen gives you real-time progress, the bootstrap command (when you brought your own server), and an escape hatch if something goes wrong.
When install finishes, the Setup screen automatically gives way to the server’s normal Summary view.
Two install paths #
A server reaches the Setup screen one of two ways depending on how you created it:
- Provider-created — Depfloy is creating the machine for you on a connected provider (Hetzner, AWS or DigitalOcean). You’ll see a Provisioning badge while the provider is still spinning up the VM, then Installing once the machine is up and Depfloy’s install script is running.
- Custom Setup — you brought your own server. You’ll see Installing and a bootstrap command to copy and paste into a root SSH session on the server. Until you run the command, the server sits at “Waiting for installation to start”.
What you’ll see #
The Setup screen shows:
- The server’s name, with two status badges side by side:
- Provisioning / Installing — which phase the setup is in
- Online / Connecting / Offline — whether Depfloy currently has SSH reachability
- For provider-created servers: the provider name and a provisioning progress indicator while the machine is being created
- A step indicator showing what part of the install is currently happening (more on that below)
- The auto-generated root password while setup is in progress. Once setup finishes, request it from the server’s Security screen instead.
Install steps #
The Setup screen lists every step the server will go through before it starts, and each one updates as it is reached. Progress is a real count — “7 of 23 steps” means seven of the twenty-three steps listed on screen are done.
The list covers the whole setup, in three phases:
- Provider — creating the machine at Hetzner, AWS or DigitalOcean. Absent for Custom Setup, where the machine already exists.
- Installation — what the install script does: preparing the system and the
depfloyuser, configuring swap, installing dependencies, nginx, the language runtimes and the database or cache engine you chose, then the finishing touches. - Finalizing — the work Depfloy does after the script exits: saving the server’s public key, installing your account’s SSH keys, adding the key to your Git provider, applying firewall rules, and removing the setup files.
Which steps appear depends on the server: an App Server installs nginx and the runtimes, a Database Server installs the engine you picked instead. Click any step to expand it — the sub-steps it ran, how long each took, and the version of what it installed.
If a step cannot complete, its row says so and shows the error the script reported. Setup carries on with the remaining steps rather than stopping, so you see everything that did and did not work rather than only the first problem.
The full install typically takes 10-15 minutes; installing dependencies is the longest single step.
The screen moves on to the summary when the whole setup is done — including the finalizing work after the script exits, not just the script itself.
The Setup Log #
The record does not disappear when setup finishes. The server’s Setup Log section keeps it: every step, its result, its duration and what it installed. It is where to look when a server behaves oddly weeks later and the question is what it was actually built with.
An AI assistant connected over MCP can read the same record, and so can the API. Both answer with a summary by default — counts per phase, how the setup ended, the slowest steps, and any step that failed or never reported — and will give the full step list when asked for it.
Two words in that record mean different things. A failed step carries the error the script recorded. An unreported step is one whose result never reached Depfloy: not a failure, just unknown.
Connection status #
The Online / Connecting / Offline badge reflects Depfloy’s SSH reachability to the server. For Custom Setup, it stays Offline until you run the bootstrap command and the script opens up SSH for the depfloy user. For provider-created servers it flips to Connecting once the VM is up and Online when Depfloy successfully connects.
When something goes wrong #
If install fails, the Setup screen tells you:
- Where it failed — which step was running
- Why — the error message captured from the install script
For provider-created servers, a rollback may also be possible: if the failure happened before the machine reached a useful state, Depfloy can tear it down on the provider for you so you don’t keep paying for an unfinished server.
If you’d rather start over, click Remove Server to delete the server from Depfloy entirely. For provider-created servers this also removes the underlying machine on the provider. For Custom Setup it only removes the entry from Depfloy; the machine itself is yours to deal with.
After install completes #
When the final step finishes:
- The Console refreshes the server
- The Setup screen is replaced with the server’s normal Summary view
- You’ll receive a notification that the server is ready
From this point you can create your first project on it.