neko-rooms
Simple room management system for n.eko. Self hosted rabb.it alternative.
Zero-knowledge installation (with HTTPS and Traefik)
If you don't have any clue about docker and stuff but only want to have fun with friends in a shared browser, we got you covered!
- Rent a VPS with public IP and OS Ubuntu.
- Get a domain name pointing to your IP (you can even get some for free).
- Run install script and follow instructions.
- Secure using HTTPs thanks to Let's Encrypt and Traefik.
wget -O neko-rooms.sh https://raw.githubusercontent.com/m1k1o/neko-rooms/master/traefik/install
sudo bash neko-rooms.sh
How to start
If you want to use Traefik as reverse proxy, visit installation guide for traefik as reverse proxy.
Otherwise modify variables in docker-compose.yml
and just run docker-compose up -d
.
Download images / update
You need to pull all your images, that you want to use with neko-room. Otherwise, you might get this error: Error response from daemon: No such image:
(see issue #1).
docker pull m1k1o/neko:firefox
docker pull m1k1o/neko:chromium
# etc...
If you want to update neko image, you need to pull new image and recreate all rooms, that use old image. To update neko rooms, simply run:
docker-compose pull
docker-compose up -d
Enable storage
You might have encountered this error:
Mounts cannot be specified because storage is disabled or unavailable.
If you didn't specify storage yet, you can do it using this tutorial.
Use nvidia GPU
If you want to use nvidia GPU, you need to install nvidia-docker.
Change neko images to nvidia images in docker-compose.yml
using envorinment variable NEKO_ROOMS_NEKO_IMAGES
:
NEKO_ROOMS_NEKO_IMAGES="
ghcr.io/m1k1o/neko/nvidia-chromium:latest
ghcr.io/m1k1o/neko/nvidia-google-chrome:latest
ghcr.io/m1k1o/neko/nvidia-microsoft-edge:latest
ghcr.io/m1k1o/neko/nvidia-brave:latest
"
When creating new room, you need to specify to use GPU in expext settings.
Docs
For more information visit docs.
Roadmap:
- add GUI
- add HTTPS support
- add authentication provider for traefik
- allow specifying custom ENV variables
- allow mounting directories for persistent data
- optionally remove Traefik as dependency
- add upgrade button
- auto pull images, that do not exist
- add bearer token to for API
- add docker SSH / TCP support
- add docker swarm support
- add k8s support