This work is firstly inspired by simple-signaling-server and then futher extended.
Currently hosted on https://stage.thomsen-it.dk
Front page | Call in progress |
---|---|
![]() |
![]() |
To run the application locally
make local-install
make local-run
To build and run as a docker container
make -i
To stop the docker container
make stop
The preferred way of publishing is through the GitHub release page. Alternatively can it be done manually with the following
docker login
make -i publish username=foo
To run the selenium test suite, start the app and run the tests.
python -m pip install -r requirements.txt
python -m pytest
To run the application on a server there needs to be TLS. Therefor look in the deployment folder for the docker-compose.yaml file that describes the deployment.
The concept of the deplyment is to place Caddy in front of the application and let it work as a reverse proxy that will terminate the TLS to the application. The advantage to using Caddy is that it automatically gets TLS certificates from Let's Encrypt.
Setup process:
-
Copy the docker-compose.yaml file to the server
-
Copy the webrtc.envExample to a file called webrtc.env on the server and fill in configurations.
-
Copy the data/caddy/Caddy file to the server in the same relative path to the docker-compose file, and update the domain names accordingly.
-
Create the folders ./data/caddy/data and ./data/caddy/config
mkdir -p data/caddy/data && mkdir -p data/caddy/config
-
Run
docker-compose up -d
NOTE 1: Open the firewall on the server.
NOTE 2: To get the application working is TLS required. According to blog.mozilla.org, this is done to incease the security of regular users.