multiparty-meeting/docker/deployment/README.md

2.2 KiB

Multiparty Meeting => MM

MM stand as a shortcut for multiparty-meeting.

This is the container, or a "dockerized" version of the multiparty meeting, and like MM is shortcut, this container is a simillar shortcut that saves time. :)

Run it in few easy step.

  1. Git clone this code to your docker machine.
  2. Copy your cert in certs/cert.pem and certs/privkey.pem
    1. In case you need to generate a new cert and private key, you can use (note -nodes flag, which allows to generate unencrypted private key)
        $ openssl req -x509 -newkey rsa:4096 -keyout privkey.pem -out cert.pem -days 365 -nodes
  1. Recomended: set TURN server and credential in configs/app/config.js
    1. In case you are using coturn, you can generate a user and key with
        $ turnadmin -k -u <username> -p <password>

Placeholder looks like

	turnServers     : [
		{
			urls : [
				'turn:example.com:443?transport=tcp'
			],
			username   : 'example',
			credential : 'example'
		}

You would need to replace example.com by your IP or domain, add the username previously used <username> and credential is the code generated by the above mentioned command.

  1. Optional: Change other stuff in config:
    1. Optional: replace logo/logo.svg with your company logo svg.
    2. Optional: sort audio/video codecs according to preference.

Run:

There is two ways

  1. Simple use docker run command
$ sudo ./run.sh
  1. Or with docker-compose / install docker compose /
  $ sudo docker-compose up --detach

Rebuild

If you change app-config.js or or something in .env then you have to rebuild the image.

  $ sudo docker-compose up --build --detach

Docker networking

Container works in "host" network mode, because birdge mode has the following issue

[Docker - Docker hangs when attempting to bind a large number of ports] (https://success.docker.com/article/docker-compose-and-docker-run-hang-when-binding-a-large-port-range)

Further Informations

Read more about configs and settings in multiparty meeting README.