Jitsi Meet
Jitsi Meet is an open-source video conferencing platform for secure, self-hosted meetings.
Configuration
services:
web:
image: jitsi/web:${JITSI_IMAGE_VERSION:-unstable}
restart: unless-stopped
depends_on:
- prosody
volumes:
- jitsiWebConfig:/config
- jitsiWebTranscripts:/usr/share/jitsi-meet/transcripts
environment:
- PUBLIC_URL
- TZ
- XMPP_DOMAIN
- XMPP_AUTH_DOMAIN
- XMPP_BOSH_URL_BASE
- XMPP_MUC_DOMAIN
- XMPP_GUEST_DOMAIN
- XMPP_RECORDER_DOMAIN
- ENABLE_AUTH
- ENABLE_GUESTS
- ENABLE_LETSENCRYPT
- ENABLE_HTTP_REDIRECT
- ENABLE_XMPP_WEBSOCKET
- ENABLE_COLIBRI_WEBSOCKET
- DISABLE_HTTPS
- JICOFO_AUTH_USER
- JVB_AUTH_USER
- JICOFO_AUTH_PASSWORD
- JVB_AUTH_PASSWORD
prosody:
image: jitsi/prosody:${JITSI_IMAGE_VERSION:-unstable}
restart: unless-stopped
volumes:
- jitsiProsodyConfig:/config
- jitsiProsodyPlugins:/prosody-plugins-custom
environment:
- TZ
- XMPP_DOMAIN
- XMPP_AUTH_DOMAIN
- XMPP_MUC_DOMAIN
- XMPP_GUEST_DOMAIN
- XMPP_RECORDER_DOMAIN
- JICOFO_AUTH_USER
- JVB_AUTH_USER
- JICOFO_AUTH_PASSWORD
- JVB_AUTH_PASSWORD
- JICOFO_COMPONENT_SECRET
- JWT_APP_ID
- JWT_APP_SECRET
- ENABLE_AUTH
- ENABLE_GUESTS
jicofo:
image: jitsi/jicofo:${JITSI_IMAGE_VERSION:-unstable}
restart: unless-stopped
depends_on:
- prosody
volumes:
- jitsiJicofoConfig:/config
environment:
- TZ
- XMPP_DOMAIN
- XMPP_AUTH_DOMAIN
- XMPP_MUC_DOMAIN
- XMPP_INTERNAL_MUC_DOMAIN
- JICOFO_AUTH_USER
- JICOFO_AUTH_PASSWORD
- JICOFO_COMPONENT_SECRET
- JVB_BREWERY_MUC
jvb:
image: jitsi/jvb:${JITSI_IMAGE_VERSION:-unstable}
restart: unless-stopped
depends_on:
- prosody
ports:
- 10000
volumes:
- jitsiJvbConfig:/config
environment:
- TZ
- XMPP_AUTH_DOMAIN
- XMPP_INTERNAL_MUC_DOMAIN
- JVB_AUTH_USER
- JVB_AUTH_PASSWORD
- JVB_BREWERY_MUC
- JVB_PORT
- JVB_ADVERTISE_IPS
- PUBLIC_URL
volumes:
jitsiWebConfig:
driver: local
jitsiWebTranscripts:
driver: local
jitsiProsodyConfig:
driver: local
jitsiProsodyPlugins:
driver: local
jitsiJicofoConfig:
driver: local
jitsiJvbConfig:
driver: local[variables]
main_domain = "${domain}"
jitsi_image_version = "unstable"
jicofo_auth_password = "${password:32}"
jvb_auth_password = "${password:32}"
jicofo_component_secret = "${password:32}"
[config]
mounts = []
[[config.domains]]
serviceName = "web"
port = 8_000
host = "${main_domain}"
[config.env]
PUBLIC_URL = "https://${main_domain}"
TZ = "UTC"
JITSI_IMAGE_VERSION = "${jitsi_image_version}"
XMPP_DOMAIN = "meet.jitsi"
XMPP_AUTH_DOMAIN = "auth.meet.jitsi"
XMPP_BOSH_URL_BASE = "http://prosody:5280"
XMPP_MUC_DOMAIN = "muc.meet.jitsi"
XMPP_INTERNAL_MUC_DOMAIN = "internal-muc.meet.jitsi"
XMPP_GUEST_DOMAIN = "guest.meet.jitsi"
XMPP_RECORDER_DOMAIN = "recorder.meet.jitsi"
ENABLE_AUTH = "0"
ENABLE_GUESTS = "1"
ENABLE_LETSENCRYPT = "0"
ENABLE_HTTP_REDIRECT = "0"
ENABLE_XMPP_WEBSOCKET = "1"
ENABLE_COLIBRI_WEBSOCKET = "1"
DISABLE_HTTPS = "1"
JICOFO_AUTH_USER = "focus"
JVB_AUTH_USER = "jvb"
JICOFO_AUTH_PASSWORD = "${jicofo_auth_password}"
JVB_AUTH_PASSWORD = "${jvb_auth_password}"
JICOFO_COMPONENT_SECRET = "${jicofo_component_secret}"
JVB_BREWERY_MUC = "jvbbrewery"
JVB_PORT = "10000"
JVB_ADVERTISE_IPS = ""
JWT_APP_ID = ""
JWT_APP_SECRET = ""Base64
To import this template in Dokploy: create a Compose service → Advanced → Base64 import and paste the content below:
ewogICJjb21wb3NlIjogInNlcnZpY2VzOlxuICB3ZWI6XG4gICAgaW1hZ2U6IGppdHNpL3dlYjoke0pJVFNJX0lNQUdFX1ZFUlNJT046LXVuc3RhYmxlfVxuICAgIHJlc3RhcnQ6IHVubGVzcy1zdG9wcGVkXG4gICAgZGVwZW5kc19vbjpcbiAgICAgIC0gcHJvc29keVxuICAgIHZvbHVtZXM6XG4gICAgICAtIGppdHNpV2ViQ29uZmlnOi9jb25maWdcbiAgICAgIC0gaml0c2lXZWJUcmFuc2NyaXB0czovdXNyL3NoYXJlL2ppdHNpLW1lZXQvdHJhbnNjcmlwdHNcbiAgICBlbnZpcm9ubWVudDpcbiAgICAgIC0gUFVCTElDX1VSTFxuICAgICAgLSBUWlxuICAgICAgLSBYTVBQX0RPTUFJTlxuICAgICAgLSBYTVBQX0FVVEhfRE9NQUlOXG4gICAgICAtIFhNUFBfQk9TSF9VUkxfQkFTRVxuICAgICAgLSBYTVBQX01VQ19ET01BSU5cbiAgICAgIC0gWE1QUF9HVUVTVF9ET01BSU5cbiAgICAgIC0gWE1QUF9SRUNPUkRFUl9ET01BSU5cbiAgICAgIC0gRU5BQkxFX0FVVEhcbiAgICAgIC0gRU5BQkxFX0dVRVNUU1xuICAgICAgLSBFTkFCTEVfTEVUU0VOQ1JZUFRcbiAgICAgIC0gRU5BQkxFX0hUVFBfUkVESVJFQ1RcbiAgICAgIC0gRU5BQkxFX1hNUFBfV0VCU09DS0VUXG4gICAgICAtIEVOQUJMRV9DT0xJQlJJX1dFQlNPQ0tFVFxuICAgICAgLSBESVNBQkxFX0hUVFBTXG4gICAgICAtIEpJQ09GT19BVVRIX1VTRVJcbiAgICAgIC0gSlZCX0FVVEhfVVNFUlxuICAgICAgLSBKSUNPRk9fQVVUSF9QQVNTV09SRFxuICAgICAgLSBKVkJfQVVUSF9QQVNTV09SRFxuXG4gIHByb3NvZHk6XG4gICAgaW1hZ2U6IGppdHNpL3Byb3NvZHk6JHtKSVRTSV9JTUFHRV9WRVJTSU9OOi11bnN0YWJsZX1cbiAgICByZXN0YXJ0OiB1bmxlc3Mtc3RvcHBlZFxuICAgIHZvbHVtZXM6XG4gICAgICAtIGppdHNpUHJvc29keUNvbmZpZzovY29uZmlnXG4gICAgICAtIGppdHNpUHJvc29keVBsdWdpbnM6L3Byb3NvZHktcGx1Z2lucy1jdXN0b21cbiAgICBlbnZpcm9ubWVudDpcbiAgICAgIC0gVFpcbiAgICAgIC0gWE1QUF9ET01BSU5cbiAgICAgIC0gWE1QUF9BVVRIX0RPTUFJTlxuICAgICAgLSBYTVBQX01VQ19ET01BSU5cbiAgICAgIC0gWE1QUF9HVUVTVF9ET01BSU5cbiAgICAgIC0gWE1QUF9SRUNPUkRFUl9ET01BSU5cbiAgICAgIC0gSklDT0ZPX0FVVEhfVVNFUlxuICAgICAgLSBKVkJfQVVUSF9VU0VSXG4gICAgICAtIEpJQ09GT19BVVRIX1BBU1NXT1JEXG4gICAgICAtIEpWQl9BVVRIX1BBU1NXT1JEXG4gICAgICAtIEpJQ09GT19DT01QT05FTlRfU0VDUkVUXG4gICAgICAtIEpXVF9BUFBfSURcbiAgICAgIC0gSldUX0FQUF9TRUNSRVRcbiAgICAgIC0gRU5BQkxFX0FVVEhcbiAgICAgIC0gRU5BQkxFX0dVRVNUU1xuXG4gIGppY29mbzpcbiAgICBpbWFnZTogaml0c2kvamljb2ZvOiR7SklUU0lfSU1BR0VfVkVSU0lPTjotdW5zdGFibGV9XG4gICAgcmVzdGFydDogdW5sZXNzLXN0b3BwZWRcbiAgICBkZXBlbmRzX29uOlxuICAgICAgLSBwcm9zb2R5XG4gICAgdm9sdW1lczpcbiAgICAgIC0gaml0c2lKaWNvZm9Db25maWc6L2NvbmZpZ1xuICAgIGVudmlyb25tZW50OlxuICAgICAgLSBUWlxuICAgICAgLSBYTVBQX0RPTUFJTlxuICAgICAgLSBYTVBQX0FVVEhfRE9NQUlOXG4gICAgICAtIFhNUFBfTVVDX0RPTUFJTlxuICAgICAgLSBYTVBQX0lOVEVSTkFMX01VQ19ET01BSU5cbiAgICAgIC0gSklDT0ZPX0FVVEhfVVNFUlxuICAgICAgLSBKSUNPRk9fQVVUSF9QQVNTV09SRFxuICAgICAgLSBKSUNPRk9fQ09NUE9ORU5UX1NFQ1JFVFxuICAgICAgLSBKVkJfQlJFV0VSWV9NVUNcblxuICBqdmI6XG4gICAgaW1hZ2U6IGppdHNpL2p2Yjoke0pJVFNJX0lNQUdFX1ZFUlNJT046LXVuc3RhYmxlfVxuICAgIHJlc3RhcnQ6IHVubGVzcy1zdG9wcGVkXG4gICAgZGVwZW5kc19vbjpcbiAgICAgIC0gcHJvc29keVxuICAgIHBvcnRzOlxuICAgICAgLSAxMDAwMFxuICAgIHZvbHVtZXM6XG4gICAgICAtIGppdHNpSnZiQ29uZmlnOi9jb25maWdcbiAgICBlbnZpcm9ubWVudDpcbiAgICAgIC0gVFpcbiAgICAgIC0gWE1QUF9BVVRIX0RPTUFJTlxuICAgICAgLSBYTVBQX0lOVEVSTkFMX01VQ19ET01BSU5cbiAgICAgIC0gSlZCX0FVVEhfVVNFUlxuICAgICAgLSBKVkJfQVVUSF9QQVNTV09SRFxuICAgICAgLSBKVkJfQlJFV0VSWV9NVUNcbiAgICAgIC0gSlZCX1BPUlRcbiAgICAgIC0gSlZCX0FEVkVSVElTRV9JUFNcbiAgICAgIC0gUFVCTElDX1VSTFxuXG52b2x1bWVzOlxuICBqaXRzaVdlYkNvbmZpZzpcbiAgICBkcml2ZXI6IGxvY2FsXG4gIGppdHNpV2ViVHJhbnNjcmlwdHM6XG4gICAgZHJpdmVyOiBsb2NhbFxuICBqaXRzaVByb3NvZHlDb25maWc6XG4gICAgZHJpdmVyOiBsb2NhbFxuICBqaXRzaVByb3NvZHlQbHVnaW5zOlxuICAgIGRyaXZlcjogbG9jYWxcbiAgaml0c2lKaWNvZm9Db25maWc6XG4gICAgZHJpdmVyOiBsb2NhbFxuICBqaXRzaUp2YkNvbmZpZzpcbiAgICBkcml2ZXI6IGxvY2FsXG5cbiIsCiAgImNvbmZpZyI6ICJbdmFyaWFibGVzXVxubWFpbl9kb21haW4gPSBcIiR7ZG9tYWlufVwiXG5qaXRzaV9pbWFnZV92ZXJzaW9uID0gXCJ1bnN0YWJsZVwiXG5qaWNvZm9fYXV0aF9wYXNzd29yZCA9IFwiJHtwYXNzd29yZDozMn1cIlxuanZiX2F1dGhfcGFzc3dvcmQgPSBcIiR7cGFzc3dvcmQ6MzJ9XCJcbmppY29mb19jb21wb25lbnRfc2VjcmV0ID0gXCIke3Bhc3N3b3JkOjMyfVwiXG5cbltjb25maWddXG5tb3VudHMgPSBbXVxuXG5bW2NvbmZpZy5kb21haW5zXV1cbnNlcnZpY2VOYW1lID0gXCJ3ZWJcIlxucG9ydCA9IDhfMDAwXG5ob3N0ID0gXCIke21haW5fZG9tYWlufVwiXG5cbltjb25maWcuZW52XVxuUFVCTElDX1VSTCA9IFwiaHR0cHM6Ly8ke21haW5fZG9tYWlufVwiXG5UWiA9IFwiVVRDXCJcbkpJVFNJX0lNQUdFX1ZFUlNJT04gPSBcIiR7aml0c2lfaW1hZ2VfdmVyc2lvbn1cIlxuWE1QUF9ET01BSU4gPSBcIm1lZXQuaml0c2lcIlxuWE1QUF9BVVRIX0RPTUFJTiA9IFwiYXV0aC5tZWV0LmppdHNpXCJcblhNUFBfQk9TSF9VUkxfQkFTRSA9IFwiaHR0cDovL3Byb3NvZHk6NTI4MFwiXG5YTVBQX01VQ19ET01BSU4gPSBcIm11Yy5tZWV0LmppdHNpXCJcblhNUFBfSU5URVJOQUxfTVVDX0RPTUFJTiA9IFwiaW50ZXJuYWwtbXVjLm1lZXQuaml0c2lcIlxuWE1QUF9HVUVTVF9ET01BSU4gPSBcImd1ZXN0Lm1lZXQuaml0c2lcIlxuWE1QUF9SRUNPUkRFUl9ET01BSU4gPSBcInJlY29yZGVyLm1lZXQuaml0c2lcIlxuRU5BQkxFX0FVVEggPSBcIjBcIlxuRU5BQkxFX0dVRVNUUyA9IFwiMVwiXG5FTkFCTEVfTEVUU0VOQ1JZUFQgPSBcIjBcIlxuRU5BQkxFX0hUVFBfUkVESVJFQ1QgPSBcIjBcIlxuRU5BQkxFX1hNUFBfV0VCU09DS0VUID0gXCIxXCJcbkVOQUJMRV9DT0xJQlJJX1dFQlNPQ0tFVCA9IFwiMVwiXG5ESVNBQkxFX0hUVFBTID0gXCIxXCJcbkpJQ09GT19BVVRIX1VTRVIgPSBcImZvY3VzXCJcbkpWQl9BVVRIX1VTRVIgPSBcImp2YlwiXG5KSUNPRk9fQVVUSF9QQVNTV09SRCA9IFwiJHtqaWNvZm9fYXV0aF9wYXNzd29yZH1cIlxuSlZCX0FVVEhfUEFTU1dPUkQgPSBcIiR7anZiX2F1dGhfcGFzc3dvcmR9XCJcbkpJQ09GT19DT01QT05FTlRfU0VDUkVUID0gXCIke2ppY29mb19jb21wb25lbnRfc2VjcmV0fVwiXG5KVkJfQlJFV0VSWV9NVUMgPSBcImp2YmJyZXdlcnlcIlxuSlZCX1BPUlQgPSBcIjEwMDAwXCJcbkpWQl9BRFZFUlRJU0VfSVBTID0gXCJcIlxuSldUX0FQUF9JRCA9IFwiXCJcbkpXVF9BUFBfU0VDUkVUID0gXCJcIlxuIgp9Links
Tags
video-conferencing, meetings, self-hosted, webrtc
Version: 1.0.0