259 lines
12 KiB
JSON
259 lines
12 KiB
JSON
{
|
|
"captainVersion": "2",
|
|
"documentation": "https://github.com/jitsi/docker-jitsi-meet",
|
|
"displayName": "Jitsi",
|
|
"description": "Free open-source video conferencing for web & mobile",
|
|
"isOfficial": true,
|
|
"dockerCompose": {
|
|
"version": "3",
|
|
"services": {
|
|
"$$cap_appname-web": {
|
|
"image": "jitsi/web:$$cap_tag_version",
|
|
"restart": "unless-stopped",
|
|
"ports": ["$$cap_https_port:443", "$$cap_http_port:80"],
|
|
"volumes": [
|
|
"$$cap_appname-web:/config",
|
|
"$$cap_appname-web-transcripts:/usr/share/jitsi-meet/transcripts"
|
|
],
|
|
"environment": {
|
|
"JICOFO_COMPONENT_SECRET": "$$cap_password",
|
|
"JICOFO_AUTH_PASSWORD": "$$cap_password",
|
|
"JVB_AUTH_PASSWORD": "$$cap_password",
|
|
"JIGASI_XMPP_PASSWORD": "$$cap_password",
|
|
"JIBRI_RECORDER_PASSWORD": "$$cap_password",
|
|
"JIBRI_XMPP_PASSWORD": "$$cap_password",
|
|
"HTTP_PORT": "$$cap_http_port",
|
|
"HTTPS_PORT": "$$cap_https_port",
|
|
"TZ": "$$cap_timezone",
|
|
"XMPP_DOMAIN": "meet.jitsi",
|
|
"XMPP_SERVER": "srv-captain--$$cap_appname-prosody",
|
|
"XMPP_BOSH_URL_BASE": "http://srv-captain--$$cap_appname-prosody:5280",
|
|
"XMPP_AUTH_DOMAIN": "auth.meet.jitsi",
|
|
"XMPP_MUC_DOMAIN": "muc.meet.jitsi",
|
|
"XMPP_INTERNAL_MUC_DOMAIN": "internal-muc.meet.jitsi",
|
|
"XMPP_GUEST_DOMAIN": "guest.meet.jitsi",
|
|
"XMPP_MODULES": "",
|
|
"XMPP_MUC_MODULES": "",
|
|
"XMPP_INTERNAL_MUC_MODULES": "",
|
|
"JVB_BREWERY_MUC": "jvbbrewery",
|
|
"JVB_AUTH_USER": "jvb",
|
|
"JVB_STUN_SERVERS": "meet-jit-si-turnrelay.jitsi.net:443",
|
|
"JVB_PORT": "$$cap_jvb_udp",
|
|
"JVB_TCP_HARVESTER_DISABLED": "true",
|
|
"JVB_TCP_PORT": "$$cap_jvb_tcp",
|
|
"JICOFO_AUTH_USER": "focus",
|
|
"JIGASI_XMPP_USER": "jigasi",
|
|
"JIGASI_BREWERY_MUC": "jigasibrewery",
|
|
"JIGASI_PORT_MIN": "20000",
|
|
"JIGASI_PORT_MAX": "20050",
|
|
"XMPP_RECORDER_DOMAIN": "recorder.meet.jitsi",
|
|
"JIBRI_RECORDER_USER": "recorder",
|
|
"JIBRI_RECORDING_DIR": "/config/recordings",
|
|
"JIBRI_FINALIZE_RECORDING_SCRIPT_PATH": "/config/finalize.sh",
|
|
"JIBRI_XMPP_USER": "jibri",
|
|
"JIBRI_BREWERY_MUC": "jibribrewery",
|
|
"JIBRI_PENDING_TIMEOUT": "90",
|
|
"JIBRI_STRIP_DOMAIN_JID": "muc",
|
|
"JIBRI_LOGS_DIR": "/config/logs"
|
|
}
|
|
},
|
|
"$$cap_appname-prosody": {
|
|
"image": "jitsi/prosody:$$cap_tag_version",
|
|
"notExposeAsWebApp": "true",
|
|
"restart": "unless-stopped",
|
|
"expose": ["5222", "5347", "5280"],
|
|
"volumes": ["$$cap_appname-prosody:/config"],
|
|
"environment": {
|
|
"JICOFO_COMPONENT_SECRET": "$$cap_password",
|
|
"JICOFO_AUTH_PASSWORD": "$$cap_password",
|
|
"JVB_AUTH_PASSWORD": "$$cap_password",
|
|
"JIGASI_XMPP_PASSWORD": "$$cap_password",
|
|
"JIBRI_RECORDER_PASSWORD": "$$cap_password",
|
|
"JIBRI_XMPP_PASSWORD": "$$cap_password",
|
|
"HTTP_PORT": "$$cap_http_port",
|
|
"HTTPS_PORT": "$$cap_https_port",
|
|
"TZ": "$$cap_timezone",
|
|
"XMPP_DOMAIN": "meet.jitsi",
|
|
"XMPP_SERVER": "srv-captain--$$cap_appname-prosody",
|
|
"XMPP_BOSH_URL_BASE": "http://srv-captain--$$cap_appname-prosody:5280",
|
|
"XMPP_AUTH_DOMAIN": "auth.meet.jitsi",
|
|
"XMPP_MUC_DOMAIN": "muc.meet.jitsi",
|
|
"XMPP_INTERNAL_MUC_DOMAIN": "internal-muc.meet.jitsi",
|
|
"XMPP_GUEST_DOMAIN": "guest.meet.jitsi",
|
|
"XMPP_MODULES": "",
|
|
"XMPP_MUC_MODULES": "",
|
|
"XMPP_INTERNAL_MUC_MODULES": "",
|
|
"JVB_BREWERY_MUC": "jvbbrewery",
|
|
"JVB_AUTH_USER": "jvb",
|
|
"JVB_STUN_SERVERS": "meet-jit-si-turnrelay.jitsi.net:443",
|
|
"JVB_PORT": "$$cap_jvb_udp",
|
|
"JVB_TCP_HARVESTER_DISABLED": "true",
|
|
"JVB_TCP_PORT": "$$cap_jvb_tcp",
|
|
"JICOFO_AUTH_USER": "focus",
|
|
"JIGASI_XMPP_USER": "jigasi",
|
|
"JIGASI_BREWERY_MUC": "jigasibrewery",
|
|
"JIGASI_PORT_MIN": "20000",
|
|
"JIGASI_PORT_MAX": "20050",
|
|
"XMPP_RECORDER_DOMAIN": "recorder.meet.jitsi",
|
|
"JIBRI_RECORDER_USER": "recorder",
|
|
"JIBRI_RECORDING_DIR": "/config/recordings",
|
|
"JIBRI_FINALIZE_RECORDING_SCRIPT_PATH": "/config/finalize.sh",
|
|
"JIBRI_XMPP_USER": "jibri",
|
|
"JIBRI_BREWERY_MUC": "jibribrewery",
|
|
"JIBRI_PENDING_TIMEOUT": "90",
|
|
"JIBRI_STRIP_DOMAIN_JID": "muc",
|
|
"JIBRI_LOGS_DIR": "/config/logs"
|
|
}
|
|
},
|
|
"$$cap_appname-jicofo": {
|
|
"image": "jitsi/jicofo:$$cap_tag_version",
|
|
"notExposeAsWebApp": "true",
|
|
"restart": "unless-stopped",
|
|
"volumes": ["$$cap_appname-jicofo:/config"],
|
|
"environment": {
|
|
"JICOFO_COMPONENT_SECRET": "$$cap_password",
|
|
"JICOFO_AUTH_PASSWORD": "$$cap_password",
|
|
"JVB_AUTH_PASSWORD": "$$cap_password",
|
|
"JIGASI_XMPP_PASSWORD": "$$cap_password",
|
|
"JIBRI_RECORDER_PASSWORD": "$$cap_password",
|
|
"JIBRI_XMPP_PASSWORD": "$$cap_password",
|
|
"HTTP_PORT": "$$cap_http_port",
|
|
"HTTPS_PORT": "$$cap_https_port",
|
|
"TZ": "$$cap_timezone",
|
|
"XMPP_DOMAIN": "meet.jitsi",
|
|
"XMPP_SERVER": "srv-captain--$$cap_appname-prosody",
|
|
"XMPP_BOSH_URL_BASE": "http://srv-captain--$$cap_appname-prosody:5280",
|
|
"XMPP_AUTH_DOMAIN": "auth.meet.jitsi",
|
|
"XMPP_MUC_DOMAIN": "muc.meet.jitsi",
|
|
"XMPP_INTERNAL_MUC_DOMAIN": "internal-muc.meet.jitsi",
|
|
"XMPP_GUEST_DOMAIN": "guest.meet.jitsi",
|
|
"XMPP_MODULES": "",
|
|
"XMPP_MUC_MODULES": "",
|
|
"XMPP_INTERNAL_MUC_MODULES": "",
|
|
"JVB_BREWERY_MUC": "jvbbrewery",
|
|
"JVB_AUTH_USER": "jvb",
|
|
"JVB_STUN_SERVERS": "meet-jit-si-turnrelay.jitsi.net:443",
|
|
"JVB_PORT": "$$cap_jvb_udp",
|
|
"JVB_TCP_HARVESTER_DISABLED": "true",
|
|
"JVB_TCP_PORT": "$$cap_jvb_tcp",
|
|
"JICOFO_AUTH_USER": "focus",
|
|
"JIGASI_XMPP_USER": "jigasi",
|
|
"JIGASI_BREWERY_MUC": "jigasibrewery",
|
|
"JIGASI_PORT_MIN": "20000",
|
|
"JIGASI_PORT_MAX": "20050",
|
|
"XMPP_RECORDER_DOMAIN": "recorder.meet.jitsi",
|
|
"JIBRI_RECORDER_USER": "recorder",
|
|
"JIBRI_RECORDING_DIR": "/config/recordings",
|
|
"JIBRI_FINALIZE_RECORDING_SCRIPT_PATH": "/config/finalize.sh",
|
|
"JIBRI_XMPP_USER": "jibri",
|
|
"JIBRI_BREWERY_MUC": "jibribrewery",
|
|
"JIBRI_PENDING_TIMEOUT": "90",
|
|
"JIBRI_STRIP_DOMAIN_JID": "muc",
|
|
"JIBRI_LOGS_DIR": "/config/logs"
|
|
},
|
|
"depends_on": ["$$cap_appname-prosody"]
|
|
},
|
|
"$$cap_appname-jvb": {
|
|
"image": "jitsi/jvb:$$cap_tag_version",
|
|
"notExposeAsWebApp": "true",
|
|
"restart": "unless-stopped",
|
|
"ports": [
|
|
"$$cap_jvb_udp:$$cap_jvb_udp",
|
|
"$$cap_jvb_tcp:$$cap_jvb_tcp"
|
|
],
|
|
"volumes": ["$$cap_appname-jvb:/config"],
|
|
"environment": {
|
|
"JICOFO_COMPONENT_SECRET": "$$cap_password",
|
|
"JICOFO_AUTH_PASSWORD": "$$cap_password",
|
|
"JVB_AUTH_PASSWORD": "$$cap_password",
|
|
"JIGASI_XMPP_PASSWORD": "$$cap_password",
|
|
"JIBRI_RECORDER_PASSWORD": "$$cap_password",
|
|
"JIBRI_XMPP_PASSWORD": "$$cap_password",
|
|
"HTTP_PORT": "$$cap_http_port",
|
|
"HTTPS_PORT": "$$cap_https_port",
|
|
"TZ": "$$cap_timezone",
|
|
"XMPP_DOMAIN": "meet.jitsi",
|
|
"XMPP_SERVER": "srv-captain--$$cap_appname-prosody",
|
|
"XMPP_BOSH_URL_BASE": "http://srv-captain--$$cap_appname-prosody:5280",
|
|
"XMPP_AUTH_DOMAIN": "auth.meet.jitsi",
|
|
"XMPP_MUC_DOMAIN": "muc.meet.jitsi",
|
|
"XMPP_INTERNAL_MUC_DOMAIN": "internal-muc.meet.jitsi",
|
|
"XMPP_GUEST_DOMAIN": "guest.meet.jitsi",
|
|
"XMPP_MODULES": "",
|
|
"XMPP_MUC_MODULES": "",
|
|
"XMPP_INTERNAL_MUC_MODULES": "",
|
|
"JVB_BREWERY_MUC": "jvbbrewery",
|
|
"JVB_AUTH_USER": "jvb",
|
|
"JVB_STUN_SERVERS": "meet-jit-si-turnrelay.jitsi.net:443",
|
|
"JVB_PORT": "$$cap_jvb_udp",
|
|
"JVB_TCP_HARVESTER_DISABLED": "true",
|
|
"JVB_TCP_PORT": "$$cap_jvb_tcp",
|
|
"JICOFO_AUTH_USER": "focus",
|
|
"JIGASI_XMPP_USER": "jigasi",
|
|
"JIGASI_BREWERY_MUC": "jigasibrewery",
|
|
"JIGASI_PORT_MIN": "20000",
|
|
"JIGASI_PORT_MAX": "20050",
|
|
"XMPP_RECORDER_DOMAIN": "recorder.meet.jitsi",
|
|
"JIBRI_RECORDER_USER": "recorder",
|
|
"JIBRI_RECORDING_DIR": "/config/recordings",
|
|
"JIBRI_FINALIZE_RECORDING_SCRIPT_PATH": "/config/finalize.sh",
|
|
"JIBRI_XMPP_USER": "jibri",
|
|
"JIBRI_BREWERY_MUC": "jibribrewery",
|
|
"JIBRI_PENDING_TIMEOUT": "90",
|
|
"JIBRI_STRIP_DOMAIN_JID": "muc",
|
|
"JIBRI_LOGS_DIR": "/config/logs"
|
|
},
|
|
"depends_on": ["$$cap_appname-prosody"]
|
|
}
|
|
}
|
|
},
|
|
"instructions": {
|
|
"end": "Containers were created successfully. You should wait for a few minutes before enter to Jitsi Web.",
|
|
"start": "This one click app is based on Jitsi docker image."
|
|
},
|
|
"variables": [
|
|
{
|
|
"label": "Docker tag version",
|
|
"description": "You can check the version in Docker Hub: https://hub.docker.com/r/jitsi/web/tags",
|
|
"defaultValue": "4416",
|
|
"id": "$$cap_tag_version"
|
|
},
|
|
{
|
|
"label": "HTTP Port",
|
|
"description": "This is the HTTP port to access Jitsi",
|
|
"defaultValue": "8000",
|
|
"id": "$$cap_http_port"
|
|
},
|
|
{
|
|
"label": "HTTPS Port",
|
|
"description": "This is the HTTPS port to access Jitsi",
|
|
"defaultValue": "8443",
|
|
"id": "$$cap_https_port"
|
|
},
|
|
{
|
|
"label": "Timezone",
|
|
"description": "This is the timezone for Jitsi",
|
|
"defaultValue": "Europe/Amsterdam",
|
|
"id": "$$cap_timezone"
|
|
},
|
|
{
|
|
"label": "JVB TCP Port",
|
|
"description": "TCP Port for JVB service",
|
|
"defaultValue": "4443",
|
|
"id": "$$cap_jvb_tcp"
|
|
},
|
|
{
|
|
"label": "JVB UDP Port",
|
|
"description": "UDP Port for JVB service",
|
|
"defaultValue": "10000",
|
|
"id": "$$cap_jvb_udp"
|
|
},
|
|
{
|
|
"label": "Password",
|
|
"description": "This is the password for Jitsi's services",
|
|
"defaultValue": "pass",
|
|
"id": "$$cap_password"
|
|
}
|
|
]
|
|
}
|