diff --git a/webpage/docs/getting-started/configuration/authentication.md b/webpage/docs/getting-started/configuration/authentication.md index ee7d3999..8bca9e57 100644 --- a/webpage/docs/getting-started/configuration/authentication.md +++ b/webpage/docs/getting-started/configuration/authentication.md @@ -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" diff --git a/webpage/docs/getting-started/configuration/capture.md b/webpage/docs/getting-started/configuration/capture.md index cd4f2492..cb3a565e 100644 --- a/webpage/docs/getting-started/configuration/capture.md +++ b/webpage/docs/getting-started/configuration/capture.md @@ -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: ... diff --git a/webpage/docs/getting-started/docker-images.md b/webpage/docs/getting-started/docker-images.md index ca60ece3..6d1b480c 100644 --- a/webpage/docs/getting-started/docker-images.md +++ b/webpage/docs/getting-started/docker-images.md @@ -66,7 +66,7 @@ import TabItem from '@theme/TabItem'; - ```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'; | ---- | ---- | ------------ | | | [Chromium](https://www.chromium.org/chromium-projects/)
The open-source project behind Google Chrome. | [`ghcr.io/m1k1o/neko/chromium`](https://ghcr.io/m1k1o/neko/chromium) | | | [Google Chrome](https://www.google.com/chrome/)
The most popular browser in the world. | [`ghcr.io/m1k1o/neko/google-chrome`](https://ghcr.io/m1k1o/neko/google-chrome) | -| | [Ungoogled Chromium](https://github.com/Eloston/ungoogled-chromium)
A fork of Chromium without Google integration. | [`ghcr.io/m1k1o/neko/ungoogled-chromium`](https://ghcr.io/m1k1o/neko/ungoogled-chromium) | +| | [Ungoogled Chromium](https://ungoogled-software.github.io/)
A fork of Chromium without Google integration. | [`ghcr.io/m1k1o/neko/ungoogled-chromium`](https://ghcr.io/m1k1o/neko/ungoogled-chromium) | | | [Microsoft Edge](https://www.microsoft.com/edge)
The new Microsoft Edge is based on Chromium. | [`ghcr.io/m1k1o/neko/microsoft-edge`](https://ghcr.io/m1k1o/neko/microsoft-edge) | | | [Brave](https://brave.com/)
A privacy-focused browser. | [`ghcr.io/m1k1o/neko/brave`](https://ghcr.io/m1k1o/neko/brave) | | | [Vivaldi](https://vivaldi.com/)
A highly customizable browser. | [`ghcr.io/m1k1o/neko/vivaldi`](https://ghcr.io/m1k1o/neko/vivaldi) | diff --git a/webpage/docs/getting-started/docker-run.md b/webpage/docs/getting-started/docker-run.md index f4a11149..4db2f43d 100644 --- a/webpage/docs/getting-started/docker-run.md +++ b/webpage/docs/getting-started/docker-run.md @@ -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 diff --git a/webpage/docs/getting-started/examples.md b/webpage/docs/getting-started/examples.md new file mode 100644 index 00000000..14b7cd0e --- /dev/null +++ b/webpage/docs/getting-started/examples.md @@ -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: + - :/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: +``` + +## 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: + - :/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: +``` + +## 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: + - ":/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: +``` + +## 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 +``` diff --git a/webpage/docs/getting-started/troubleshooting.md b/webpage/docs/getting-started/troubleshooting.md index 82456803..7c137c5f 100644 --- a/webpage/docs/getting-started/troubleshooting.md +++ b/webpage/docs/getting-started/troubleshooting.md @@ -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" diff --git a/webpage/docs/getting-started/updating-and-upgrading.md b/webpage/docs/getting-started/updating-and-upgrading.md deleted file mode 100644 index 5ea2fa1c..00000000 --- a/webpage/docs/getting-started/updating-and-upgrading.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -sidebar_position: 6 ---- - -# Updating & Upgrading - -Best practices for keeping Neko updated and migrating between versions. diff --git a/webpage/static/img/icons/ungoogled-chromium.svg b/webpage/static/img/icons/ungoogled-chromium.svg new file mode 100644 index 00000000..af17a407 --- /dev/null +++ b/webpage/static/img/icons/ungoogled-chromium.svg @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/webpage/versioned_docs/version-v2/faq.md b/webpage/versioned_docs/version-v2/faq.md index 17cd732a..513cce15 100644 --- a/webpage/versioned_docs/version-v2/faq.md +++ b/webpage/versioned_docs/version-v2/faq.md @@ -8,7 +8,7 @@ sidebar_position: 7 To see verbose information from n.eko server, you can enable debug mode using `NEKO_DEBUG`. -```yaml title="docker-compose.yml" +```yaml title="docker-compose.yaml" version: "3.4" services: neko: @@ -38,7 +38,7 @@ There exists an extension [Google Input Tools](https://chrome.google.com/webstor Check if you did not forget to add cap_add to your docker-compose file. -```yaml title="docker-compose.yml" +```yaml title="docker-compose.yaml" version: "3.4" services: neko: diff --git a/webpage/versioned_docs/version-v2/troubleshooting.md b/webpage/versioned_docs/version-v2/troubleshooting.md index 5a447bfc..c77876df 100644 --- a/webpage/versioned_docs/version-v2/troubleshooting.md +++ b/webpage/versioned_docs/version-v2/troubleshooting.md @@ -27,7 +27,7 @@ Check that your ephemeral port range `NEKO_EPR` is correctly exposed as `/udp` p In following example, specified range `52000-52100` must be also exposed using docker. -```yaml title="docker-compose.yml" +```yaml title="docker-compose.yaml" version: "3.4" services: neko: @@ -95,7 +95,7 @@ You should see this: If your IP is not correct, you can specify own IP resolver using `NEKO_IPFETCH`. It needs to return IP address that will be used. -```yaml title="docker-compose.yml" +```yaml title="docker-compose.yaml" version: "3.4" services: neko: @@ -118,7 +118,7 @@ services: Or you can specify your IP address manually using `NEKO_NAT1TO1`: (It's read as NAT 1 to 1, so it's capital letter 'O', not zero '0', in NAT1`TO`1) -```yaml title="docker-compose.yml" +```yaml title="docker-compose.yaml" version: "3.4" services: neko: @@ -165,7 +165,7 @@ If you put local ip as `NEKO_NAT1TO1`, external clients try to connect to that i To see verbose information from n.eko server, you can enable debug mode using `NEKO_DEBUG`. -```yaml title="docker-compose.yml" +```yaml title="docker-compose.yaml" version: "3.4" services: neko: