Based on the code samples from Janus-Gateway (https://github.com/meetecho/janus-gateway/blob/master/html/audiobridgetest.html or https://janus.conf.meetecho.com/audiobridgetest.html) and powered by Janus-Gateway (https://github.com/meetecho/janus-gateway).
Inside of the folder jcfg, the readme.md file will explain the configuration needs and inside of that folder, default_scripts it will show the remaining scripts now being used.
This method of deployment is setup for us with Docker. If you follow the instructions from the Dockerfile in a console or Linus prompt, you can install and run it locally on the machine.
| Image Name | Description | Janus Version |
|---|---|---|
| dev-1.1.0 | Development version. | v1.1.0 (https://github.com/meetecho/janus-gateway/tree/v1.1.0) |
| main-1.1.0 | Production version. | v1.1.0 (https://github.com/meetecho/janus-gateway/tree/v1.1.0) |
You can build an instance of docker using the command:
build_docker.bat {tag_name}
This will build the image in Windows and then pause asking if you want to test the build locally.
Once the docker image is build locally, you will need to run the command:
push_docker.bat {tag_name}
This is often done using a docker-compose.yml file entry (see the entry below for an example).
version: "3.7"
services:
janus:
build:
context: .
command: ["-S", "stun.l.google.com:19302"]
ports:
- "8088:8088"
- "443:443"
- "7088:7088"
- "7089:7089"
- "8188:8188"
- "8889:8889"
- "10000-10300:10000-10300/udp"
container_name:
audioroom
volumes:
- /docker/ssl/server.crt:/opt/janus/bin/server.crt
- /docker/ssl/server.key:/opt/janus/bin/server.key
- /docker/jcfg/janus.jcfg:/opt/janus/etc/janus/janus.jcfg
- /docker/jcfg/janus.transport.http.jcfg:/opt/janus/etc/janus/janus.transport.http.jcfg
- /docker/jcfg/janus.transport.websockets.jcfg:/opt/janus/etc/janus/janus.transport.websockets.jcfg
ulimits:
nproc: 65535
nofile:
soft: 100000
hard: 100000
restart: always
In this example we are building an image named "audioroom" and including volumes with the ports 80, 443 and other exposed to the host running the container.
Normally we are using an docker-compose.yml file that is not building the project. It allows for speed and keeps all versions the same on all audio room servers. The example below is more to something deployed on a server.
version: "3.7"
services:
janus:
ports:
- "80:80"
- "443:443"
- "7088:7088"
- "7089:7089"
- "8188:8188"
- "8889:8889"
- "10000-10300:10000-10300/udp"
container_name:
audioroom
volumes:
- /docker/ssl/server.crt:/opt/janus/bin/server.crt
- /docker/ssl/server.key:/opt/janus/bin/server.key
- /docker/jcfg/janus.jcfg:/opt/janus/etc/janus/janus.jcfg
- /docker/jcfg/janus.transport.http.jcfg:/opt/janus/etc/janus/janus.transport.http.jcfg
- /docker/jcfg/janus.transport.websockets.jcfg:/opt/janus/etc/janus/janus.transport.websockets.jcfg
restart: always
When setting a volume, specify each path and file for both local and internal.
Content type
Image
Digest
sha256:bdd956a2f…
Size
437.2 MB
Last updated
almost 4 years ago
docker pull subc/audioroom:main-1.1.0