> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kubox.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# kubox plane create

Build the cluster a plane runs on, then install the plane into it

### Synopsis

The two halves of standing up a management plane, from one document.

1. compile the PlaneDeployment into a cluster document
2. `kubox admin create` that cluster
3. `kubox admin install` the plane into it

It calls the same code those commands call rather than reimplementing
either: a second way of building a cluster is a second set of steps to
keep in agreement, and the one that runs wins silently.

Plan, then preflight, then apply. The plan says what would change; the
preflight proves the world is ready -- account, zone, image, bucket, two
distinct keys -- BEFORE anything is built, which is where a rebuild used to
find out. A preflight that fails creates nothing.

The compiled cluster document is WRITTEN DOWN before anything is built,
and the path is printed. If the install half fails, the cluster exists and
`kubox admin install -f <that file>` finishes the job -- you do not start over.

`--plan` renders the transaction it would perform and performs none of
it. That is the same object this command checks and prints before acting,
not a summary of one.

```
kubox plane create [flags]
```

### Options

```
      --account string                       the AWS account the plane is meant to build into; refused if the credentials belong elsewhere
      --allow-unsealed                       proceed without a record store, so credentials are NOT sealed
      --artifact-key-provider string         key sealed artifacts are protected by (env: KUBOX_ARTIFACT_KEY_PROVIDER)
      --database-url string                  record store connection string (env: KUBOX_DATABASE_URL, KUBOX_ARTIFACT_DSN)
  -f, --file string                          the PlaneDeployment to build
  -h, --help                                 help for create
      --plan                                 render the transaction this would perform, and perform none of it
      --preflight-only                       run the plan and the preflight checks, then stop; builds nothing
      --restore-registrations plane delete   an export from plane delete or `plane rebuild`: every CloudAccount, External ID, cluster record and agent credential, written back before the operator starts
      --skip-install kubox admin install     build the cluster and stop, leaving the plane to kubox admin install
      --skip-preflight                       build without proving the prerequisites first, for credentials that cannot read them; the build then finds out for itself
      --stack-key-provider string            key Pulumi state is encrypted with; must be a DIFFERENT key (env: KUBOX_STACK_KEY_PROVIDER)
      --state-backend string                 Pulumi state backend (env: PULUMI_BACKEND_URL)
      --tenant stringArray                   a tenant this plane builds for: the cloud connection's namespace (kubox-system for Kubox's own); repeatable. Read from the plane's cloud connections when not given
      --write-cluster-document string        where to write the compiled cluster document (default: beside the deployment)
```

### Global options

See [global options](/cli-reference/kubox#global-options).

### SEE ALSO

* [kubox plane](/cli-reference/kubox_plane)	 - Describe and build a management plane from one document
