mirror of
https://github.com/nestriness/nestri.git
synced 2025-12-12 08:45:38 +02:00
## Description Update the readme file ## Related Issues none ## Type of Change - [ ] Bug fix (non-breaking change) - [ ] New feature (non-breaking change) - [ ] Breaking change (fix or feature that changes existing functionality) - [x] Documentation update - [ ] Other (please describe): ## Checklist - [x] I have updated relevant documentation - [x] My code follows the project's coding style - [x] My changes generate no new warnings/errors ## Notes for Reviewers none ## Screenshots/Demo none ## Additional Context none <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **Documentation** - Major overhaul of documentation structure and content for improved clarity, modern presentation, and ease of navigation. - Updated and expanded guides for installation, setup, architecture, and command-line interfaces. - Enhanced FAQ and troubleshooting sections with more comprehensive answers and technical details. - Added new guides for self-hosting with reverse proxy examples (Caddy, Traefik) and developer notes. - Improved theming, styling, and home page layout for the documentation site. - Simplified main README to a minimalistic project header and tagline. - Added new documentation files for Nestri Relay introduction and container CLI parameters. - Removed outdated or redundant documentation files and components to streamline content. - **Chores** - Updated, reorganized, or removed configuration files for dependencies, linting, and environment setup. - Switched to a new documentation theme and updated related project dependencies. - Removed Renovate configuration and ESLint config specific to docs app. - Adjusted TypeScript and package configurations for better compatibility. - **Style** - Improved dark mode support and visual consistency across documentation and components. - Introduced new Tailwind CSS theming and animation support for the documentation site. - **New Features** - Added example configuration files for deploying Nestri Relay with Caddy and Traefik reverse proxies. - Introduced new Tailwind CSS theming and animation support for the documentation site. - Added a new logo component supporting light/dark mode and optional title display. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: Victor Pahuus Petersen <49293748+victorpahuus@users.noreply.github.com> Co-authored-by: Wanjohi <elviswanjohi47@gmail.com> Co-authored-by: DatCaptainHorse <DatCaptainHorse@users.noreply.github.com>
73 lines
3.3 KiB
Markdown
73 lines
3.3 KiB
Markdown
---
|
|
title: Getting Started
|
|
description: Follow this guide to set up and run your own Nestri Node for cloud gaming.
|
|
icon: 'lucide:message-circle-question'
|
|
---
|
|
|
|
::alert{type="danger"}
|
|
Nestri is in a **very early phase**, so errors and bugs may occur.
|
|
::
|
|
|
|
::alert{type="info"}
|
|
You can pull the docker image from GitHub Container Registry with:
|
|
```bash [pull image command]
|
|
podman pull ghcr.io/nestrilabs/nestri/runner:nightly
|
|
```
|
|
::
|
|
|
|
### Step 1: Create a home directory for your Nestri Node
|
|
This will be the directory where Steam, games and other persistent files will be saved.
|
|
You may use any directory you like, but for simplicity, we will use `~/nestri` as the home directory in this guide.
|
|
```bash [create home directory command]
|
|
mkdir -p ~/nestri
|
|
sudo chmod 777 ~/nestri
|
|
```
|
|
The above will create a directory called `nestri` in your home directory and set the permissions to allow read, write, and execute for all users.
|
|
This is important for the Nestri Node to function properly.
|
|
### Step 2: Launch the Nestri Runner
|
|
With your home directory ready, insert it into the command below, replacing `<relay_url>` with the relay's URL you want to use.
|
|
You will also need to replace `<room_name>` with an unique name for the room you will be using to play your games.
|
|
|
|
```bash [run container (nvidia)]
|
|
podman run --replace -d --name=nestri --shm-size=6g --cap-add=SYS_NICE --device /dev/dri/ -e RELAY_URL='<relay_url>' -e NESTRI_ROOM='<room_name>' -e RESOLUTION=1920x1080 -e FRAMERATE=60 -e NESTRI_PARAMS='--verbose=true --dma-buf=true --audio-rate-control=cbr --video-codec=h264 --video-rate-control=cbr --video-bitrate=8000' -v ~/nestri:/home/nestri --device /dev/nvidia-uvm --device /dev/nvidia-uvm-tools --device /dev/nvidiactl --device /dev/nvidia0 --device /dev/nvidia-modeset ghcr.io/nestrilabs/nestri/runner:nightly
|
|
```
|
|
|
|
```bash [run container (amd/intel)]
|
|
podman run --replace -d --name=nestri --shm-size=6g --cap-add=SYS_NICE --device /dev/dri/ -e RELAY_URL='<relay_url>' -e NESTRI_ROOM='<room_name>' -e RESOLUTION=1920x1080 -e FRAMERATE=60 -e NESTRI_PARAMS='--verbose=true --dma-buf=true --audio-rate-control=cbr --video-codec=h264 --video-rate-control=cbr --video-bitrate=8000' -v ~/nestri:/home/nestri ghcr.io/nestrilabs/nestri/runner:nightly
|
|
```
|
|
|
|
### Step 3: Begin Playing
|
|
Finally, construct the play URL with your room name and relay URL:
|
|
`https://nestri.io/play/<room_name>?peerURL=<relay_url>`
|
|
|
|
Navigate to this URL in your browser, click on the button to capture your mouse pointer and keyboard, and start playing!
|
|
|
|
### Stop the Nestri Container
|
|
If you want to stop the Nestri container, you can use the following command:
|
|
|
|
```bash [stop container command]
|
|
podman stop nestri
|
|
```
|
|
|
|
### Start the Nestri Container
|
|
If you want to start the Nestri container after stopping it, you can use the following command:
|
|
|
|
```bash [start container command]
|
|
podman start nestri
|
|
```
|
|
|
|
### Remove the Nestri Container
|
|
To remove the container, you can use the following command:
|
|
|
|
```bash [remove container command]
|
|
podman rm nestri
|
|
```
|
|
|
|
### Update Nestri Container
|
|
To update the Nestri container, you can use the following command:
|
|
|
|
```bash [update container command]
|
|
podman pull ghcr.io/nestrilabs/nestri/runner:nightly
|
|
```
|
|
After which, you can recreate the container with the latest image using the same command you used in Step 2.
|