Skip to content

Cloning

Cloning makes a full, independent copy of a VM or container — same environment, same data — running as a brand-new instance with its own IP address and SSH port. The original keeps running.

Use it to spin up a pre-configured machine again without repeating setup: a golden dev box, a configured build server, a template you’ve tuned just right.

  1. Find the VM or container on your dashboard.
  2. Flip the card to its back — click the icon in the card’s top-right corner.
  3. Find the Clone box (for a VM it’s under Open Ports; for a container it’s under the live stats).
  4. Optionally type a name for the copy (leave it blank to auto-name it <original>-clone-<id>).
  5. Click Clone.

The clone appears as a new instance within a minute or two. It’s yours, billed like any other instance, and completely independent — changes to one never affect the other.

Terminal window
ccloud copy my-vm # auto-named clone
ccloud copy my-vm my-vm-staging # named clone
Terminal window
curl -X POST https://console.carolinacloud.io/api/instance/<uuid>/clone/ \
-H "Authorization: Bearer $CCLOUD_API_KEY"

Returns 202 Accepted. Poll GET /api/instance/ and the clone shows up once it boots.

Optional body field:

  • move_public_ip (default false) — move the source’s dedicated public IP to the clone instead of leaving it on the original. Handy when you’re replacing a machine and want its public address to follow the copy.
  • A fresh identity. The clone gets its own IP, SSH port, and hostname. Its login credentials and SSH keys are copied from the source, so you connect the same way you did to the original.
  • The source keeps running. A container is copied live. A VM is stopped just for the duration of the disk copy, then restarted automatically — copy time scales with how much data is actually written, not the disk’s size, so a lightly-used machine copies fast.
  • Automatic placement. Carolina Cloud picks a host with room for the clone. You don’t choose one.
  • Rate limit. One clone per 5 minutes, per user.
  • An instance can’t be cloned while it’s provisioning, resizing, or already cloning — wait for it to settle into running (or shut_off/exited).