# Create your first computer

> Create a computer, run a web server on it, and open it over HTTPS

> Nevia is in beta and open to selected teams. Public launch in Dec 2026. The CLI installs with `curl -fsSL https://get.nevia.cloud | sh`, and the MCP server is at https://api.nevia.cloud/mcp. A person signs in once in the browser.
> Setup, sign-in and requesting access: [SKILL.md](https://nevia.cloud/SKILL.md). When Nevia fits and when it doesn't: [why.md](https://nevia.cloud/why.md).

> For the complete documentation index, see [llms.txt](https://nevia.cloud/llms.txt). This page's HTML version: https://nevia.cloud/docs/get-started/first-computer

You will create a computer, run a small web server on it and open that server
in your browser over HTTPS. You use the same CLI as the quickstart.

## Prerequisites

You need:

* The `nevia` CLI, installed and signed in as in the [Quickstart](https://nevia.cloud/docs/get-started/quickstart.md).
* A selected workspace where you have the **admin** or **editor** role.

Check the workspace:

```bash
nevia workspace current
```

## 1. Create a computer

Create a computer named `hello`. It publishes port 8080 on HTTPS port 443 and
the command waits until the computer is ready:

```bash
nevia new hello -p 443:8080 --wait
```

Check its state and URL:

```bash
nevia status hello
```

The computer should be `ready` and show a `url` that looks like `https://<host>`.
Copy it. The URL is set when the computer first becomes ready and never changes.

> **Default image**
>
> Omit `--image`. The computer starts from the platform default image.

## 2. Run a web server

Write a page to the home directory of the `nevia` user:

```bash
nevia exec hello -- sh -c 'echo "<h1>Hello from Nevia</h1>" > ~/index.html'
```

Start a Python web server on port 8080 in the background. `nohup` and the
redirects keep it running after the exec session ends:

```bash
nevia exec hello -- sh -c 'nohup python3 -m http.server 8080 --directory ~ >/dev/null 2>&1 &'
```

The command returns right away and the server keeps running inside the computer.

## 3. Open the URL

Request the `url` you copied in step 1. Replace `<host>` with your URL:

```bash
curl https://<host>
```

You should see:

```html
<h1>Hello from Nevia</h1>
```

Your browser shows the same page. The URL stays the same for as long as the
computer exists. Until something listens on port 8080, it returns `503`.

[Computer ports and URLs](https://nevia.cloud/docs/reference/computer-ports-and-urls.md) covers how
mappings and URLs work.

## 4. Clean up

Delete the computer and wait until it is gone:

```bash
nevia rm hello --yes --wait
```

Check that `hello` no longer appears:

```bash
nevia ls
```

## Next steps

* [Create a computer](https://nevia.cloud/docs/computers/create.md) covers images, ports and options.
* [Publish a computer on an HTTPS URL](https://nevia.cloud/docs/computers/publish.md) covers changing ports and the limits that apply.
* [Run a command](https://nevia.cloud/docs/computers/exec.md) covers running commands and environment variables.
* [Computer ports and URLs](https://nevia.cloud/docs/reference/computer-ports-and-urls.md) lists mapping rules and URL formats.
* [Create and restore checkpoints](https://nevia.cloud/docs/computers/checkpoints.md) saves and restores a computer's state.
