mirror of
https://github.com/m1k1o/neko.git
synced 2025-08-03 16:59:12 +02:00
update docs and add examples + ungoogled chromium svg.
This commit is contained in:
parent
d1a2717ec1
commit
2dd5585b49
10 changed files with 179 additions and 23 deletions
|
@ -149,7 +149,7 @@ member:
|
|||
:::tip
|
||||
For easier configuration, you can specify only passwords using environment variables:
|
||||
|
||||
```yaml title="docker-compose.yml"
|
||||
```yaml title="docker-compose.yaml"
|
||||
environment:
|
||||
NEKO_MEMBER_MULTIUSER_USER_PASSWORD: "neko"
|
||||
NEKO_MEMBER_MULTIUSER_ADMIN_PASSWORD: "admin"
|
||||
|
|
|
@ -453,7 +453,7 @@ sudo modprobe v4l2loopback exclusive_caps=1
|
|||
|
||||
This is needed even if neko is running inside a Docker container. In that case, the v4l2loopback module must be loaded on the host machine and the device must be mounted inside the container.
|
||||
|
||||
```yaml title="docker-compose.yml"
|
||||
```yaml title="docker-compose.yaml"
|
||||
services:
|
||||
neko:
|
||||
...
|
||||
|
|
|
@ -66,7 +66,7 @@ import TabItem from '@theme/TabItem';
|
|||
|
||||
<TabItem value="docker-compose" label="Docker Compose configuration">
|
||||
|
||||
```yaml title="docker-compose.yml"
|
||||
```yaml title="docker-compose.yaml"
|
||||
cap_add:
|
||||
- SYS_ADMIN
|
||||
shm_size: 2g
|
||||
|
@ -79,7 +79,7 @@ import TabItem from '@theme/TabItem';
|
|||
| ---- | ---- | ------------ |
|
||||
| <img src="/img/icons/chromium.svg" width="60" height="60" /> | [Chromium](https://www.chromium.org/chromium-projects/) <br /> The open-source project behind Google Chrome. | [`ghcr.io/m1k1o/neko/chromium`](https://ghcr.io/m1k1o/neko/chromium) |
|
||||
| <img src="/img/icons/google-chrome.svg" width="60" height="60" /> | [Google Chrome](https://www.google.com/chrome/) <br /> The most popular browser in the world. | [`ghcr.io/m1k1o/neko/google-chrome`](https://ghcr.io/m1k1o/neko/google-chrome) |
|
||||
| <img src="/img/icons/chromium.svg" width="60" height="60" /> | [Ungoogled Chromium](https://github.com/Eloston/ungoogled-chromium) <br /> A fork of Chromium without Google integration. | [`ghcr.io/m1k1o/neko/ungoogled-chromium`](https://ghcr.io/m1k1o/neko/ungoogled-chromium) |
|
||||
| <img src="/img/icons/ungoogled-chromium.svg" width="60" height="60" /> | [Ungoogled Chromium](https://ungoogled-software.github.io/) <br /> A fork of Chromium without Google integration. | [`ghcr.io/m1k1o/neko/ungoogled-chromium`](https://ghcr.io/m1k1o/neko/ungoogled-chromium) |
|
||||
| <img src="/img/icons/microsoft-edge.svg" width="60" height="60" /> | [Microsoft Edge](https://www.microsoft.com/edge) <br/> The new Microsoft Edge is based on Chromium. | [`ghcr.io/m1k1o/neko/microsoft-edge`](https://ghcr.io/m1k1o/neko/microsoft-edge) |
|
||||
| <img src="/img/icons/brave.svg" width="60" height="60" /> | [Brave](https://brave.com/) <br /> A privacy-focused browser. | [`ghcr.io/m1k1o/neko/brave`](https://ghcr.io/m1k1o/neko/brave) |
|
||||
| <img src="/img/icons/vivaldi.svg" width="60" height="60" /> | [Vivaldi](https://vivaldi.com/) <br /> A highly customizable browser. | [`ghcr.io/m1k1o/neko/vivaldi`](https://ghcr.io/m1k1o/neko/vivaldi) |
|
||||
|
|
|
@ -44,7 +44,7 @@ You can also use Docker Compose to run Neko. It is preferred to use Docker Compo
|
|||
|
||||
Create a `docker-compose.yml` file with the following content:
|
||||
|
||||
```yaml title="docker-compose.yml"
|
||||
```yaml title="docker-compose.yaml"
|
||||
services:
|
||||
neko:
|
||||
image: ghcr.io/m1k1o/neko/firefox:latest
|
||||
|
|
121
webpage/docs/getting-started/examples.md
Normal file
121
webpage/docs/getting-started/examples.md
Normal file
|
@ -0,0 +1,121 @@
|
|||
---
|
||||
sidebar_position: 7
|
||||
---
|
||||
|
||||
# Examples
|
||||
|
||||
Here are some examples to get you started with Neko. You can use these examples as a reference to create your own configurations.
|
||||
|
||||
## Firefox
|
||||
|
||||
```yaml title="docker-compose.yaml"
|
||||
services:
|
||||
neko:
|
||||
image: "ghcr.io/m1k1o/neko/firefox:latest"
|
||||
restart: "unless-stopped"
|
||||
shm_size: "2gb"
|
||||
ports:
|
||||
- "8080:8080"
|
||||
- "52000-52100:52000-52100/udp"
|
||||
volumes:
|
||||
- <your-host-path>:/home/neko/.mozilla/firefox # persist firexfox settings
|
||||
environment:
|
||||
NEKO_DESKTOP_SCREEN: '1920x1080@30'
|
||||
NEKO_MEMBER_MULTIUSER_USER_PASSWORD: neko
|
||||
NEKO_MEMBER_MULTIUSER_ADMIN_PASSWORD: admin
|
||||
NEKO_WEBRTC_EPR: 52000-52100
|
||||
NEKO_WEBRTC_ICELITE: 1
|
||||
NEKO_WEBRTC_NAT1TO1: <your-IP>
|
||||
```
|
||||
|
||||
## Chromium
|
||||
|
||||
```yaml title="docker-compose.yaml"
|
||||
services:
|
||||
neko:
|
||||
image: "ghcr.io/m1k1o/neko/chromium:latest"
|
||||
restart: "unless-stopped"
|
||||
shm_size: "2gb"
|
||||
cap_add:
|
||||
- SYS_ADMIN
|
||||
ports:
|
||||
- "8080:8080"
|
||||
- "52000-52100:52000-52100/udp"
|
||||
volumes:
|
||||
- <your-host-path>:/home/neko/.config/chromium # persist chromium settings
|
||||
environment:
|
||||
NEKO_DESKTOP_SCREEN: '1920x1080@30'
|
||||
NEKO_MEMBER_MULTIUSER_USER_PASSWORD: neko
|
||||
NEKO_MEMBER_MULTIUSER_ADMIN_PASSWORD: admin
|
||||
NEKO_WEBRTC_EPR: 52000-52100
|
||||
NEKO_WEBRTC_ICELITE: 1
|
||||
NEKO_WEBRTC_NAT1TO1: <your-IP>
|
||||
```
|
||||
|
||||
## VLC
|
||||
|
||||
```yaml title="docker-compose.yaml"
|
||||
services:
|
||||
neko:
|
||||
image: "ghcr.io/m1k1o/neko/vlc:latest"
|
||||
restart: "unless-stopped"
|
||||
shm_size: "2gb"
|
||||
cap_add:
|
||||
- SYS_ADMIN
|
||||
volumes:
|
||||
- "<your-video-folder>:/video" # mount your video folder
|
||||
ports:
|
||||
- "8080:8080"
|
||||
- "52000-52100:52000-52100/udp"
|
||||
environment:
|
||||
NEKO_DESKTOP_SCREEN: '1920x1080@30'
|
||||
NEKO_MEMBER_MULTIUSER_USER_PASSWORD: neko
|
||||
NEKO_MEMBER_MULTIUSER_ADMIN_PASSWORD: admin
|
||||
NEKO_WEBRTC_EPR: 52000-52100
|
||||
NEKO_WEBRTC_ICELITE: 1
|
||||
NEKO_WEBRTC_NAT1TO1: <your-IP>
|
||||
```
|
||||
|
||||
## Raspberry Pi
|
||||
|
||||
```yaml title="config.yaml"
|
||||
capture:
|
||||
video:
|
||||
codec: h264
|
||||
ids: [ main ]
|
||||
pipelines:
|
||||
main:
|
||||
gst_pipeline: |
|
||||
ximagesrc display-name=%s use-damage=0 show-pointer=true use-damage=false
|
||||
! video/x-raw,framerate=30/1
|
||||
! videoconvert
|
||||
! queue
|
||||
! video/x-raw,framerate=30/1,format=NV12
|
||||
! v4l2h264enc extra-controls="controls,h264_profile=1,video_bitrate=1250000;"
|
||||
! h264parse config-interval=3
|
||||
! video/x-h264,stream-format=byte-stream,profile=constrained-baseline
|
||||
```
|
||||
|
||||
```yaml title="docker-compose.yaml"
|
||||
services:
|
||||
neko:
|
||||
# see docs for more variants
|
||||
image: "ghcr.io/m1k1o/neko/arm-chromium:latest"
|
||||
restart: "unless-stopped"
|
||||
# increase on rpi's with more then 1gb ram.
|
||||
shm_size: "520mb"
|
||||
ports:
|
||||
- "8088:8080"
|
||||
- "52000-52100:52000-52100/udp"
|
||||
# note: this is important since we need a GPU for hardware acceleration alternatively
|
||||
# mount the devices into the docker.
|
||||
privileged: true
|
||||
volumes:
|
||||
- "./config.yaml:/etc/neko/neko.yaml"
|
||||
environment:
|
||||
NEKO_DESKTOP_SCREEN: '1280x720@30'
|
||||
NEKO_MEMBER_MULTIUSER_USER_PASSWORD: 'neko'
|
||||
NEKO_MEMBER_MULTIUSER_ADMIN_PASSWORD: 'admin'
|
||||
NEKO_WEBRTC_EPR: 52000-52100
|
||||
NEKO_WEBRTC_ICELITE: 1
|
||||
```
|
|
@ -1,5 +1,5 @@
|
|||
---
|
||||
sidebar_position: 7
|
||||
sidebar_position: 6
|
||||
---
|
||||
|
||||
# Troubleshooting
|
||||
|
@ -27,7 +27,7 @@ Check that your ephemeral port range `NEKO_WEBRTC_EPR` is correctly exposed as a
|
|||
|
||||
In the following example, the specified range `52000-52100` must also be exposed using Docker. You can't map it to a different range, e.g. `52000-52100:53000-53100/udp`. If you want to use a different range, you must change the range in `NEKO_WEBRTC_EPR` too.
|
||||
|
||||
```yaml title="docker-compose.yml"
|
||||
```yaml title="docker-compose.yaml"
|
||||
services:
|
||||
neko:
|
||||
image: "ghcr.io/m1k1o/neko/firefox:latest"
|
||||
|
@ -95,7 +95,7 @@ You should see this:
|
|||
|
||||
If your IP is not correct, you can specify your own IP resolver using `NEKO_WEBRTC_IP_RETRIEVAL_URL`. It needs to return the IP address that will be used.
|
||||
|
||||
```yaml title="docker-compose.yml"
|
||||
```yaml title="docker-compose.yaml"
|
||||
services:
|
||||
neko:
|
||||
image: "ghcr.io/m1k1o/neko/firefox:latest"
|
||||
|
@ -117,7 +117,7 @@ services:
|
|||
|
||||
Or you can specify your IP address manually using `NEKO_WEBRTC_NAT1TO1`:
|
||||
|
||||
```yaml title="docker-compose.yml"
|
||||
```yaml title="docker-compose.yaml"
|
||||
services:
|
||||
neko:
|
||||
image: "ghcr.io/m1k1o/neko/firefox:latest"
|
||||
|
@ -167,7 +167,7 @@ If you put a local IP as `NEKO_WEBRTC_NAT1TO1`, external clients try to connect
|
|||
|
||||
To see verbose information from the n.eko server, you can enable debug mode using `NEKO_DEBUG`.
|
||||
|
||||
```yaml title="docker-compose.yml"
|
||||
```yaml title="docker-compose.yaml"
|
||||
services:
|
||||
neko:
|
||||
image: "ghcr.io/m1k1o/neko/firefox:latest"
|
||||
|
|
|
@ -1,7 +0,0 @@
|
|||
---
|
||||
sidebar_position: 6
|
||||
---
|
||||
|
||||
# Updating & Upgrading
|
||||
|
||||
Best practices for keeping Neko updated and migrating between versions.
|
Loading…
Add table
Add a link
Reference in a new issue