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

# Deploy a workload

> Create a deployment or job from a container image and verify it.

Use `idyl deploy` when you want to create a workload from a container image.

## 1. Confirm your target

```bash theme={null}
idyl whoami
```

Check the account, namespace, and subnet. To use a different subnet for one command, pass `--subnet`.

## 2. Deploy a service

Use a deployment for software that should keep running:

```bash theme={null}
idyl deploy nginx:1.25 --name web --replicas 2
```

Output similar to:

```text theme={null}
✓ Deployment web created
  2 replicas · nginx:1.25 · subnet <subnet>
```

## 3. Inspect the deployment

```bash theme={null}
idyl get deployment web
idyl get pod
```

To watch pods as they change:

```bash theme={null}
idyl get pod --watch
```

## Deploy a job

Use a job for work that should run to completion:

```bash theme={null}
idyl deploy busybox:latest --name batch --completions 1 --restart on_failure
```

Check the job and pods:

```bash theme={null}
idyl get job batch
idyl get pod --all
```

## Add resources or environment variables

```bash theme={null}
idyl deploy myapp:v2 --name api --cpu 500m --memory 256Mi --env LOG_LEVEL=debug
```

Use GPU requirements when the subnet has GPU capacity:

```bash theme={null}
idyl deploy vllm:latest --name llm --gpu h100
```

## Request workload isolation

When the target subnet allows it, request microVM-backed execution with
`--isolation-class microvm`:

```bash theme={null}
idyl deploy nginx:1.27-alpine \
  --name web \
  --subnet <subnet> \
  --platform linux/amd64 \
  --isolation-class microvm
```

The subnet runtime policy and compatible provider capacity must admit the
requested isolation class. For the builder, operator, and provider model, see
[Workload isolation](/concepts/workload-isolation).

## Change the target subnet

For a single deployment:

```bash theme={null}
idyl deploy nginx:1.25 --name web --subnet <subnet>
```

For future commands in the current context:

```bash theme={null}
idyl context edit --set-subnet <subnet>
```
