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

# Run Unsloth Studio

> Launch Unsloth Studio on a Thunder Compute GPU instance and open it through a public HTTPS URL.

Unsloth Studio is a browser UI for running and training local models. This guide uses the official Linux installer on a Thunder Compute `base` instance, then exposes Studio through Thunder Compute port forwarding.

<Info>
  These commands were verified on a single A100 80 GB development instance. The same setup path is suitable for other GPU instances with enough disk space for the models and datasets you plan to use.
</Info>

## Create the instance

Create a GPU instance with the `base` template and enough primary disk for Studio, models, and datasets:

```bash theme={null}
tnr create --mode development --gpu a100 --num-gpus 1 --vcpus 12 --template base --primary-disk 250
```

If A100 is unavailable, use the same shape with an available GPU:

```bash theme={null}
# RTX A6000
tnr create --mode development --gpu a6000 --num-gpus 1 --vcpus 6 --template base --primary-disk 250

# H100 80 GB
tnr create --mode development --gpu h100 --num-gpus 1 --vcpus 16 --template base --primary-disk 250
```

Connect to the instance:

```bash theme={null}
tnr status
tnr connect <instance-id>
```

Check that the GPU is visible:

```bash theme={null}
nvidia-smi --query-gpu=name,memory.total,driver_version --format=csv,noheader
```

<img src="https://mintcdn.com/thundercompute/V8M6hl5xI_G4jQ82/images/unsloth-studio/01-create-instance.png?fit=max&auto=format&n=V8M6hl5xI_G4jQ82&q=85&s=6516042d375a3e3e6d0073e5ac3c8103" alt="Create an A100 instance and verify the GPU" width="1280" height="420" data-path="images/unsloth-studio/01-create-instance.png" />

## Install Unsloth Studio

Install the system packages that Unsloth Studio needs to build and run its local inference components:

```bash theme={null}
sudo apt-get update
sudo apt-get install -y cmake libcurl4-openssl-dev
```

Run the official Unsloth Studio installer:

```bash theme={null}
curl -fsSL https://unsloth.ai/install.sh | sh
```

The installer creates a Python environment under `~/.unsloth/studio` and writes an `unsloth` launcher into `~/.local/bin`.

For the current SSH session, add the launcher directory to your path:

```bash theme={null}
export PATH="$HOME/.local/bin:$PATH"
```

<img src="https://mintcdn.com/thundercompute/V8M6hl5xI_G4jQ82/images/unsloth-studio/02-install-studio.png?fit=max&auto=format&n=V8M6hl5xI_G4jQ82&q=85&s=6d396296586d5349ebc427713ee5bc74" alt="Install Unsloth Studio on a Thunder Compute instance" width="1280" height="850" data-path="images/unsloth-studio/02-install-studio.png" />

## Start Studio

Start Unsloth Studio on port `8888` and listen on all interfaces:

```bash theme={null}
nohup unsloth studio -H 0.0.0.0 -p 8888 > ~/unsloth-studio.log 2>&1 &
```

Check that Studio is running:

```bash theme={null}
tail -n 40 ~/unsloth-studio.log
curl -s http://127.0.0.1:8888/api/health | python3 -m json.tool
```

The health endpoint should return a JSON response with `"status":"healthy"`.

<img src="https://mintcdn.com/thundercompute/V8M6hl5xI_G4jQ82/images/unsloth-studio/03-start-health.png?fit=max&auto=format&n=V8M6hl5xI_G4jQ82&q=85&s=33ba9925ae0314b1fb5b0634124cde06" alt="Start Unsloth Studio and check the health endpoint" width="1280" height="760" data-path="images/unsloth-studio/03-start-health.png" />

<Note>
  `curl -I http://127.0.0.1:8888` may return `405 Method Not Allowed` because Studio does not accept `HEAD` requests on `/`. Use `curl http://127.0.0.1:8888` or `/api/health` instead.
</Note>

## Get the admin password

On first launch, Studio creates a default admin user named `unsloth`.

Read the generated bootstrap password from the instance:

```bash theme={null}
cat ~/.unsloth/studio/auth/.bootstrap_password
```

Use this password the first time you open Studio, then change it in the UI.

## Open Studio in your browser

From a second terminal on your local machine, forward port `8888`:

```bash theme={null}
tnr ports forward <instance-id> --add 8888
```

Your Studio URL uses this format:

```text theme={null}
https://<instance-uuid>-8888.thundercompute.net
```

Open the URL in your browser and sign in with:

| Field    | Value                                                       |
| -------- | ----------------------------------------------------------- |
| Username | `unsloth`                                                   |
| Password | The value from `~/.unsloth/studio/auth/.bootstrap_password` |

After the bootstrap login, Studio prompts you to choose a new password for future sessions.

<img src="https://mintcdn.com/thundercompute/V8M6hl5xI_G4jQ82/images/unsloth-studio/04-studio-login.png?fit=max&auto=format&n=V8M6hl5xI_G4jQ82&q=85&s=469a5586179b3ab4aa64866b2da7ca57" alt="Unsloth Studio first-run account setup screen" width="1440" height="960" data-path="images/unsloth-studio/04-studio-login.png" />

## Stop Studio

Stop the Studio process when you are done using it:

```bash theme={null}
pkill -f "unsloth studio"
exit
```

Then delete the instance from your local terminal:

```bash theme={null}
tnr delete <instance-id>
```

Billing stops when the instance is deleted.

## Docker Note

Unsloth also publishes an official `unsloth/unsloth` Docker image. Thunder Compute supports Docker with the `--device nvidia.com/gpu=all` flag, but Docker support is experimental because the instance itself is already containerized.

Use the native installer above for the first Studio setup.

## References

* [Unsloth Studio installation](https://unsloth.ai/docs/get-started/install)
* [Unsloth Docker image](https://hub.docker.com/r/unsloth/unsloth)
* [Using Docker on Thunder Compute](/guides/using-docker-on-thundercompute)
