2022-01-07 21:11:45 +01:00
2021-11-17 18:53:08 +01:00
2022-01-07 21:11:45 +01:00
2021-05-18 11:48:14 +00:00
2022-01-07 21:11:45 +01:00
2021-10-18 01:10:37 +02:00
2022-01-07 21:11:45 +01:00
2021-05-31 20:59:44 +02:00
2021-07-29 22:43:44 +02:00
2021-03-12 10:47:34 +01:00
2021-03-08 01:07:42 +01:00
2021-10-18 01:19:02 +02:00
2021-11-17 18:53:15 +01:00
2021-11-17 18:53:15 +01:00
2021-11-17 18:53:15 +01:00
2021-07-29 21:57:10 +02:00
2021-03-12 12:17:33 +01:00
2021-03-07 18:18:05 +01:00
2022-01-07 21:11:45 +01:00
2021-12-02 20:30:10 +01:00

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

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.
  • 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. Start it quickly with docker-compose -f docker-compose.http.yml up -d.

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

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
S
Description
Languages
Go 36.8%
TypeScript 26.6%
Shell 17.3%
Vue 16.7%
HTML 2%
Other 0.6%