VxCloud
🖥️Beginner5 minGetting started

Provision your first node (InstaNodeBox)

Wire an existing VM — or spin up a fresh one on AWS, GCP, Azure, Linode, Hetzner and more — into your VxCloud workspace, register it as a node, and confirm it is healthy.

What you'll build

  • A node registered in your workspace and set as the default deploy target
  • Its SSH key sealed in Vault, never stored in the browser
  • A green health check from the InstaNodeBox agent on port 8744

Before you begin

  • A VxCloud workspace (sign up is free)
  • Either an existing Linux VM with SSH access, or a cloud-provider credential added to Vault
  • About 5 minutes
1

Understand what a "node" is

In VxCloud, a node is any Linux machine your workspace can deploy to. Every app, database, and Compose stack lands on a node you own — VxCloud never hosts your workloads, it orchestrates your infrastructure over SSH.

The InstaNodeBox wizard is how a machine becomes a node. It registers the host, seals its SSH key in Vault, installs a lightweight agent, and starts health-checking it. Behind the scenes the dashboard calls POST /api/v1/auth/nodes/ for managed VMs, or POST /api/v1/auth/nodes/self-hosted when you bring your own.

Two paths, one outcome

You can bring an existing VM (fastest) or have VxCloud provision a fresh one through a cloud credential. Both end with a registered, health-checked node — this tutorial covers both.
2

Open the InstaNodeBox wizard

From the dashboard, go to Development → Nodes and click Provision node. The wizard opens on a five-step rail.

app.prodxcloud.com/dashboard/development

Provision a node

1
2
3
4
5

Do you already have a VM?

✅ Yes, I have a VM
➕ No, create one for me
Step 1 — does a VM already exist? Pick the path that matches your setup.

Bringing your own VM is the 30-second path

If you already have a Droplet, EC2 instance, or any Ubuntu/Debian box with SSH, pick “Yes, I have a VM” and skip straight to step 5.
3

Pick a cloud provider (new-VM path)

If you chose “create one for me”, the wizard shows every provider it can drive. Selection is read from the credentials you’ve stored in Vault — no keys are ever typed into this screen.

app.prodxcloud.com/dashboard/development

Choose a cloud provider

2
3
4
5
AWS
GCP
Azure
Linode
DigitalOcean
Hetzner
Vultr
UpCloud
Alibaba
Step 2 — 11 providers are supported. The cheapest dev tiers start under $5/mo.

Need IAM permissions

Provisioning a fresh VM requires the stored credential to allow RunInstances / equivalent. The wizard surfaces the exact policy it needs before it spends anything.
4

Choose region, size, and name it

Pick a region and OS, then an instance size. The wizard shows live hourly and monthly pricing pulled from the provider so there are no surprises. Give the node a name and an environment.

app.prodxcloud.com/dashboard/development

Configure the instance

4
5
api-prod-fra-1
PRODUCTION▾
Falkenstein, DE · Ubuntu 22.04 LTS▾

2 vCPU · 4 GB RAM · 40 GB SSD — $4.99/mo

Step 4 — name, environment, and (optionally) VPC / security-group settings.

Advanced config is optional

Leave VPC and security-group fields blank for a sensible default (public node, ports 22/80/443). You can lock it down later without re-provisioning.
5

Review and provision

The final step is a single summary screen. Confirm the specs and price, then click Provision node. For an existing VM you instead enter its IP, SSH user, and pick the Vault key pair — no cloud spend happens.

app.prodxcloud.com/dashboard/development

Review & provision

5
ProviderHetzner CloudNameapi-prod-fra-1SizeCX22 · $4.99/mo
Provision node →
Step 5 — one click. The node appears as 'provisioning' immediately.

The node row transitions provisioning → active. SSH keys are written to Vault at workspaces/<org>/<workspace>/developerapikey/default — they never touch the browser or your laptop.

6

Verify the node is healthy

Once active, VxCloud proxies a health probe to the InstaNodeBox agent on port 8744. You’ll see a green dot in the UI. To confirm from the CLI:

bash
# Health check proxied to the node agent$ curl -s https://app.prodxcloud.com/api/v1/auth/nodes/core/instance/healthcheck \$   -H "Authorization: Bearer $VXCLOUD_TOKEN"
health check
$ curl …/nodes/core/instance/healthcheck
{"status":"ok","agent":"8744","node":"api-prod-fra-1"}
Node is active and reachable
A healthy node responds within ~1s. Red means the agent or SSH path is unreachable.

Finally, set it as your workspace default so every deploy targets it without re-selecting:

bash
$ curl -X POST https://app.prodxcloud.com/api/v1/auth/nodes/<node_id>/set-default \$   -H "Authorization: Bearer $VXCLOUD_TOKEN"

You have a node

It’s registered, its key is in Vault, and it’s health-checked. You’re ready to deploy an app — start with the Next.js walkthrough.

Nice work — you're done!

You completed Provision your first node (InstaNodeBox). Keep the momentum going with the next walkthrough, or jump back to the full catalog.