A containerized deployment of the Janus WebRTC Gateway for Opensim voice.
140
This repository provides a production-ready, Dockerized deployment of the Janus WebRTC Gateway, pre-configured for OpenSimulator (OpenSim) grids.
For full source files and custom configuration files (.jcfg), visit the GitHub repository: š GitHub - calvinux/os-janus-gatewayā
As proprietary services like Vivox reach end-of-life, OpenSim requires a self-hosted spatial voice solution. This image offers a reliable Janus-based alternative without third-party dependencies.
.jcfg configuration files.version: "3.8"
services:
os-janus-gateway:
image: calvinux/os-janus-gateway:latest
container_name: os-janus-gateway
restart: unless-stopped
network_mode: host
volumes:
- ./janus.jcfg:/opt/janus/etc/janus/janus.jcfg:ro
- ./janus.transport.http.jcfg:/opt/janus/etc/janus/janus.transport.http.jcfg:ro
- ./janus.transport.nanomsg.jcfg:/opt/janus/etc/janus/janus.transport.nanomsg.jcfg:ro
- ./janus.transport.websockets.jcfg:/opt/janus/etc/janus/janus.transport.websockets.jcfg:ro
general: {
configs_folder = "/opt/janus/etc/janus"
plugins_folder = "/opt/janus/lib/janus/plugins"
transports_folder = "/opt/janus/lib/janus/transports"
events_folder = "/opt/janus/lib/janus/events"
loggers_folder = "/opt/janus/lib/janus/loggers"
debug_level = 7
api_secret = "MyAPISecretKey"
admin_secret = "MyAdminAPISecretKey"
server_name = "GridVoice"
session_timeout = 300
protected_folders = [
"/bin",
"/boot",
"/dev",
"/etc",
"/initrd",
"/lib",
"/lib32",
"/lib64",
"/proc",
"/sbin",
"/sys",
"/usr",
"/var",
"/opt/janus/bin",
"/opt/janus/etc",
"/opt/janus/include",
"/opt/janus/lib",
"/opt/janus/lib32",
"/opt/janus/lib64",
"/opt/janus/sbin"
]
}
certificates: {
}
media: {
rtp_port_range = "10000-10200"
}
nat: {
stun_server = "stun.l.google.com"
stun_port = 19302
nice_debug = false
ice_ignore_list = "vmnet"
nat_1_1_mapping = "123.123.123.123"
}
plugins: {
}
transports: {
}
loggers: {
}
events: {
}
general: {
json = "indented"
base_path = "/voice"
http = true
port = 14223
https = false
}
admin: {
admin_base_path = "/voiceAdmin"
admin_http = true
admin_port = 14225
admin_https = false
}
cors: {
}
certificates: {
}
general: {
enabled = false
json = "indented"
address = "ipc:///tmp/janus.ipc"
}
admin: {
admin_enabled = false
}
general: {
json = "indented"
ws = false
ws_port = 14228
wss = false
}
admin: {
admin_ws = false
admin_ws_port = 7188
admin_wss = false
}
cors: {
}
certificates: {
}
Run the container:
docker compose up -d
Update local .jcfg files before starting:
janus.jcfg: Update API security tokens (api_secret and admin_secret).janus.transport.http.jcfg: Adjust HTTP ports and set your public WAN IP address.You must enable port forwarding in your NAT settings.
For full source files and custom configuration files (.jcfg), visit the GitHub repository: š GitHub - calvinux/os-janus-gatewayā
Content type
Image
Digest
sha256:64336d5c1ā¦
Size
63.6 MB
Last updated
7 days ago
docker pull calvinux/os-janus-gateway