Files
neko-rooms/README.md
T
Miroslav Šedivý fac5292470 text proofread.
2021-07-17 20:31:32 +02:00

3.6 KiB

neko-rooms

release license pulls issues Chat on discord

Simple room management system for n.eko. Self hosted rabb.it alternative.

rooms new room n.eko

Zero-knowledge installation

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.
curl https://raw.githubusercontent.com/m1k1o/neko-rooms/master/install | sudo bash

How to start

You need to have installed Docker and docker-compose. You need to have a custom domain pointing to your server's IP.

You can watch installation video provided by Dr R1ck:

https://www.youtube.com/watch?v=cCmnw-pq0gA

Installation guide

You only need .env.example, docker-compose.yml and traefik/.

Do I need to use traefik?

  • Traefik needs to be used to forward traffic to the rooms. You can put nginx in front of it, but not replace it.
  • Your domain name specified for traefik must match the domain name, that your proxy connects to. In docker-compose it is the service name.
  • See example configuration for nginx.

You can use docker-compose.http.yml that will expose this service to 8080 or any port. Authentication is optional.

Step 1

Copy .env.example to .env and customize.

cp .env.example .env

Step 2

Create usersfile with your users:

touch traefik/usersfile

And add as many users as you like:

echo $(htpasswd -nb user password) >> traefik/usersfile

Step 3 (HTTPS only)

Create acme.json

touch traefik/acme.json
chmod 600 traefik/acme.json

Update your email in traefik/traefik.yml.

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:latest
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.

Roadmap:

  • add GUI
  • add HTTPS support
  • add authentication provider for traefik
  • allow specifying custom ENV variables
  • allow mounting directories for persistent data
  • 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