DEVUP Docs
Back to Dashboard

Compute

Security & Infrastructure

How DEVUP AI Compute instances are isolated, authenticated, and operated — and what happens to your data at each stage of an instance's lifecycle.

Infrastructure overview

DEVUP AI's Compute platform runs on cloud infrastructure from established, vetted providers, with data centers distributed across North America and Europe. This gives users access to a range of GPU and CPU hardware without needing to manage physical servers, networking, or capacity planning.

All provisioning, billing, lifecycle management, and access control are handled through DEVUP AI's own platform layer — the dashboard, APIs, and billing system you interact with are built and operated by DEVUP AI.

Instance isolation

Every Compute instance — GPU or CPU — runs in its own isolated container. Containers are provisioned with their own filesystem, network namespace, and allocated hardware resources. Your instance does not share its filesystem or process space with any other user's workload.

  • Filesystem isolation — each instance boots from a fresh Container Disk image. Files you create or install are visible only to your instance.
  • Network isolation — instances receive their own network namespace. Exposed ports (SSH, JupyterLab, custom services) are routed through unique connection URLs assigned to your instance.
  • Resource allocation — GPU instances receive dedicated GPU(s) and allocated vRAM. CPU instances receive dedicated vCPU cores and RAM matching the selected flavor.

SSH key-based authentication

SSH access to Compute instances uses public key authentication. Password-based SSH login is not supported.

  1. Generate an SSH key pair on your local machine (e.g., ssh-keygen -t ed25519).
  2. Save your public key in Account Settings. Your private key never leaves your machine.
  3. When you deploy an instance with SSH enabled, your public key is automatically injected into the instance's authorized_keys.
  4. Connect using your private key: ssh root@host -p port -i ~/.ssh/your_key.

For full connection instructions, see Connect to GPU Instance or Connect to CPU Instance.

If no SSH public key is saved in your account, SSH access is unavailable even if the SSH toggle is enabled during deployment. Save your key before deploying.

JupyterLab access

JupyterLab runs inside your instance and is accessible via a unique connection URL generated at deploy time. Access is protected by an auto-generated password displayed in your instance's details panel after deployment.

The JupyterLab interface is the standard open-source JupyterLab — DEVUP AI does not inject custom branding, telemetry, or extensions into the Jupyter environment.

Data handling & lifecycle

What happens to your data depends on the storage type and the instance event:

EventContainer DiskVolume Disk (GPU only)Network Volume
Instance pausedPreservedPreservedPreserved
Instance terminatedDeletedDeletedPreserved
Auto-paused (balance ≤ 0)PreservedPreservedPreserved
Backstop termination (balance further depleted)DeletedDeletedPreserved
Network Volume deletedN/AN/ADeleted

The automated billing safety mechanisms (auto-pause and backstop termination) are described in detail on the Network Volumes page. The key takeaway: Network Volumes survive all instance events — only explicit volume deletion destroys the data.

Security best practices

  • Use strong SSH keys — Ed25519 or RSA 4096-bit keys are recommended. Do not share your private key or commit it to version control.
  • Store important data on Network Volumes — ephemeral disks (Container Disk, Volume Disk) are destroyed on termination. Anything you need to persist should be on a Network Volume or downloaded via SSH.
  • Keep your balance funded — the billing system auto-pauses and eventually auto-terminates instances when your balance is depleted. There is no grace period between these stages. Proactively pause or terminate instances you are not using.
  • Terminate instances when done — paused instances continue to accrue idle charges. Terminating releases the hardware and stops all instance billing (Network Volume billing continues separately).
  • Record your JupyterLab password — the auto-generated password is shown in the instance details panel. If you lose it, you can still access the instance via SSH and restart JupyterLab with a new password.