2
0

docker-compose.yml 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460
  1. version: '3.5'
  2. services:
  3. # Frontend
  4. web:
  5. image: jitsi/web:${JITSI_IMAGE_VERSION:-stable-9457-2}
  6. restart: ${RESTART_POLICY:-unless-stopped}
  7. ports:
  8. - '${HTTP_PORT}:80'
  9. - '${HTTPS_PORT}:443'
  10. volumes:
  11. - ${CONFIG}/web:/config:Z
  12. - ${CONFIG}/web/crontabs:/var/spool/cron/crontabs:Z
  13. - ${CONFIG}/transcripts:/usr/share/jitsi-meet/transcripts:Z
  14. environment:
  15. - AMPLITUDE_ID
  16. - ANALYTICS_SCRIPT_URLS
  17. - ANALYTICS_WHITELISTED_EVENTS
  18. - AUDIO_QUALITY_OPUS_BITRATE
  19. - AUTO_CAPTION_ON_RECORD
  20. - BRANDING_DATA_URL
  21. - BOSH_RELATIVE
  22. - CHROME_EXTENSION_BANNER_JSON
  23. - COLIBRI_WEBSOCKET_PORT
  24. - COLIBRI_WEBSOCKET_JVB_LOOKUP_NAME
  25. - COLIBRI_WEBSOCKET_REGEX
  26. - CONFCODE_URL
  27. - CORS_HEADER_ACCESS_CONTROL_ALLOW_ORIGIN
  28. - DEFAULT_LANGUAGE
  29. - DEPLOYMENTINFO_ENVIRONMENT
  30. - DEPLOYMENTINFO_ENVIRONMENT_TYPE
  31. - DEPLOYMENTINFO_REGION
  32. - DEPLOYMENTINFO_SHARD
  33. - DEPLOYMENTINFO_USERREGION
  34. - DESKTOP_SHARING_FRAMERATE_AUTO
  35. - DESKTOP_SHARING_FRAMERATE_MIN
  36. - DESKTOP_SHARING_FRAMERATE_MAX
  37. - DIALIN_NUMBERS_URL
  38. - DIALOUT_AUTH_URL
  39. - DIALOUT_CODES_URL
  40. - DISABLE_AUDIO_LEVELS
  41. - DISABLE_COLIBRI_WEBSOCKET_JVB_LOOKUP
  42. - DISABLE_DEEP_LINKING
  43. - DISABLE_GRANT_MODERATOR
  44. - DISABLE_HTTPS
  45. - DISABLE_KICKOUT
  46. - DISABLE_LOCAL_RECORDING
  47. - DISABLE_POLLS
  48. - DISABLE_PRIVATE_CHAT
  49. - DISABLE_PROFILE
  50. - DISABLE_REACTIONS
  51. - DISABLE_REMOTE_VIDEO_MENU
  52. - DISABLE_START_FOR_ALL
  53. - DROPBOX_APPKEY
  54. - DROPBOX_REDIRECT_URI
  55. - DYNAMIC_BRANDING_URL
  56. - ENABLE_AUDIO_PROCESSING
  57. - ENABLE_AUTH
  58. - ENABLE_AUTH_DOMAIN
  59. - ENABLE_BREAKOUT_ROOMS
  60. - ENABLE_CALENDAR
  61. - ENABLE_COLIBRI_WEBSOCKET
  62. - ENABLE_COLIBRI_WEBSOCKET_UNSAFE_REGEX
  63. - ENABLE_E2EPING
  64. - ENABLE_FILE_RECORDING_SHARING
  65. - ENABLE_GUESTS
  66. - ENABLE_HSTS
  67. - ENABLE_HTTP_REDIRECT
  68. - ENABLE_IPV6
  69. - ENABLE_LETSENCRYPT
  70. - ENABLE_NO_AUDIO_DETECTION
  71. - ENABLE_NOISY_MIC_DETECTION
  72. - ENABLE_OCTO
  73. - ENABLE_OPUS_RED
  74. - ENABLE_PREJOIN_PAGE
  75. - ENABLE_P2P
  76. - ENABLE_WELCOME_PAGE
  77. - ENABLE_CLOSE_PAGE
  78. - ENABLE_LIVESTREAMING
  79. - ENABLE_LIVESTREAMING_DATA_PRIVACY_LINK
  80. - ENABLE_LIVESTREAMING_HELP_LINK
  81. - ENABLE_LIVESTREAMING_TERMS_LINK
  82. - ENABLE_LIVESTREAMING_VALIDATOR_REGEXP_STRING
  83. - ENABLE_LOAD_TEST_CLIENT
  84. - ENABLE_LOCAL_RECORDING_NOTIFY_ALL_PARTICIPANT
  85. - ENABLE_LOCAL_RECORDING_SELF_START
  86. - ENABLE_RECORDING
  87. - ENABLE_REMB
  88. - ENABLE_REQUIRE_DISPLAY_NAME
  89. - ENABLE_SERVICE_RECORDING
  90. - ENABLE_SIMULCAST
  91. - ENABLE_STATS_ID
  92. - ENABLE_STEREO
  93. - ENABLE_SUBDOMAINS
  94. - ENABLE_TALK_WHILE_MUTED
  95. - ENABLE_TCC
  96. - ENABLE_TRANSCRIPTIONS
  97. - ENABLE_XMPP_WEBSOCKET
  98. - ENABLE_JAAS_COMPONENTS
  99. - ETHERPAD_PUBLIC_URL
  100. - ETHERPAD_URL_BASE
  101. - E2EPING_NUM_REQUESTS
  102. - E2EPING_MAX_CONFERENCE_SIZE
  103. - E2EPING_MAX_MESSAGE_PER_SECOND
  104. - GOOGLE_ANALYTICS_ID
  105. - GOOGLE_API_APP_CLIENT_ID
  106. - HIDE_PREMEETING_BUTTONS
  107. - HIDE_PREJOIN_DISPLAY_NAME
  108. - HIDE_PREJOIN_EXTRA_BUTTONS
  109. - INVITE_SERVICE_URL
  110. - JVB_PREFER_SCTP
  111. - LETSENCRYPT_DOMAIN
  112. - LETSENCRYPT_EMAIL
  113. - LETSENCRYPT_USE_STAGING
  114. - MATOMO_ENDPOINT
  115. - MATOMO_SITE_ID
  116. - MICROSOFT_API_APP_CLIENT_ID
  117. - NGINX_RESOLVER
  118. - NGINX_WORKER_PROCESSES
  119. - NGINX_WORKER_CONNECTIONS
  120. - PEOPLE_SEARCH_URL
  121. - PREFERRED_LANGUAGE
  122. - PUBLIC_URL
  123. - P2P_PREFERRED_CODEC
  124. - RESOLUTION
  125. - RESOLUTION_MIN
  126. - RESOLUTION_WIDTH
  127. - RESOLUTION_WIDTH_MIN
  128. - START_AUDIO_MUTED
  129. - START_AUDIO_ONLY
  130. - START_SILENT
  131. - START_WITH_AUDIO_MUTED
  132. - START_VIDEO_MUTED
  133. - START_WITH_VIDEO_MUTED
  134. - TESTING_AV1_SUPPORT
  135. - TOKEN_AUTH_URL
  136. - TOOLBAR_BUTTONS
  137. - TRANSLATION_LANGUAGES
  138. - TRANSLATION_LANGUAGES_HEAD
  139. - TZ
  140. - USE_APP_LANGUAGE
  141. - VIDEOQUALITY_BITRATE_H264_LOW
  142. - VIDEOQUALITY_BITRATE_H264_STANDARD
  143. - VIDEOQUALITY_BITRATE_H264_HIGH
  144. - VIDEOQUALITY_BITRATE_H264_FULL
  145. - VIDEOQUALITY_BITRATE_H264_ULTRA
  146. - VIDEOQUALITY_BITRATE_H264_SS_HIGH
  147. - VIDEOQUALITY_BITRATE_VP8_LOW
  148. - VIDEOQUALITY_BITRATE_VP8_STANDARD
  149. - VIDEOQUALITY_BITRATE_VP8_HIGH
  150. - VIDEOQUALITY_BITRATE_VP8_FULL
  151. - VIDEOQUALITY_BITRATE_VP8_ULTRA
  152. - VIDEOQUALITY_BITRATE_VP8_SS_HIGH
  153. - VIDEOQUALITY_BITRATE_VP9_LOW
  154. - VIDEOQUALITY_BITRATE_VP9_STANDARD
  155. - VIDEOQUALITY_BITRATE_VP9_HIGH
  156. - VIDEOQUALITY_BITRATE_VP9_FULL
  157. - VIDEOQUALITY_BITRATE_VP9_ULTRA
  158. - VIDEOQUALITY_BITRATE_VP9_SS_HIGH
  159. - VIDEOQUALITY_BITRATE_AV1_LOW
  160. - VIDEOQUALITY_BITRATE_AV1_STANDARD
  161. - VIDEOQUALITY_BITRATE_AV1_HIGH
  162. - VIDEOQUALITY_BITRATE_AV1_FULL
  163. - VIDEOQUALITY_BITRATE_AV1_ULTRA
  164. - VIDEOQUALITY_BITRATE_AV1_SS_HIGH
  165. - VIDEOQUALITY_PREFERRED_CODEC
  166. - XMPP_AUTH_DOMAIN
  167. - XMPP_BOSH_URL_BASE
  168. - XMPP_DOMAIN
  169. - XMPP_GUEST_DOMAIN
  170. - XMPP_MUC_DOMAIN
  171. - XMPP_RECORDER_DOMAIN
  172. - XMPP_PORT
  173. - WHITEBOARD_ENABLED
  174. - WHITEBOARD_COLLAB_SERVER_PUBLIC_URL
  175. networks:
  176. meet.jitsi:
  177. depends_on:
  178. - jvb
  179. # XMPP server
  180. prosody:
  181. image: jitsi/prosody:${JITSI_IMAGE_VERSION:-stable-9457-2}
  182. restart: ${RESTART_POLICY:-unless-stopped}
  183. expose:
  184. - '${XMPP_PORT:-5222}'
  185. - '${PROSODY_S2S_PORT:-5269}'
  186. - '5347'
  187. - '${PROSODY_HTTP_PORT:-5280}'
  188. volumes:
  189. - ${CONFIG}/prosody/config:/config:Z
  190. - ${CONFIG}/prosody/prosody-plugins-custom:/prosody-plugins-custom:Z
  191. environment:
  192. - AUTH_TYPE
  193. - DISABLE_POLLS
  194. - ENABLE_AUTH
  195. - ENABLE_AV_MODERATION
  196. - ENABLE_BREAKOUT_ROOMS
  197. - ENABLE_END_CONFERENCE
  198. - ENABLE_GUESTS
  199. - ENABLE_IPV6
  200. - ENABLE_LOBBY
  201. - ENABLE_RECORDING
  202. - ENABLE_S2S
  203. - ENABLE_VISITORS
  204. - ENABLE_XMPP_WEBSOCKET
  205. - ENABLE_JAAS_COMPONENTS
  206. - GC_TYPE
  207. - GC_INC_TH
  208. - GC_INC_SPEED
  209. - GC_INC_STEP_SIZE
  210. - GC_GEN_MIN_TH
  211. - GC_GEN_MAX_TH
  212. - GLOBAL_CONFIG
  213. - GLOBAL_MODULES
  214. - JIBRI_RECORDER_USER
  215. - JIBRI_RECORDER_PASSWORD
  216. - JIBRI_SIP_BREWERY_MUC
  217. - JIBRI_XMPP_USER
  218. - JIBRI_XMPP_PASSWORD
  219. - JICOFO_AUTH_PASSWORD
  220. - JICOFO_COMPONENT_SECRET
  221. - JIGASI_XMPP_USER
  222. - JIGASI_XMPP_PASSWORD
  223. - JVB_AUTH_USER
  224. - JVB_AUTH_PASSWORD
  225. - JWT_APP_ID
  226. - JWT_APP_SECRET
  227. - JWT_ACCEPTED_ISSUERS
  228. - JWT_ACCEPTED_AUDIENCES
  229. - JWT_ASAP_KEYSERVER
  230. - JWT_ALLOW_EMPTY
  231. - JWT_AUTH_TYPE
  232. - JWT_ENABLE_DOMAIN_VERIFICATION
  233. - JWT_SIGN_TYPE
  234. - JWT_TOKEN_AUTH_MODULE
  235. - MATRIX_UVS_URL
  236. - MATRIX_UVS_ISSUER
  237. - MATRIX_UVS_AUTH_TOKEN
  238. - MATRIX_UVS_SYNC_POWER_LEVELS
  239. - MATRIX_LOBBY_BYPASS
  240. - LOG_LEVEL
  241. - LDAP_AUTH_METHOD
  242. - LDAP_BASE
  243. - LDAP_BINDDN
  244. - LDAP_BINDPW
  245. - LDAP_FILTER
  246. - LDAP_VERSION
  247. - LDAP_TLS_CIPHERS
  248. - LDAP_TLS_CHECK_PEER
  249. - LDAP_TLS_CACERT_FILE
  250. - LDAP_TLS_CACERT_DIR
  251. - LDAP_START_TLS
  252. - LDAP_URL
  253. - LDAP_USE_TLS
  254. - MAX_PARTICIPANTS
  255. - PROSODY_ADMINS
  256. - PROSODY_AUTH_TYPE
  257. - PROSODY_C2S_LIMIT
  258. - PROSODY_C2S_REQUIRE_ENCRYPTION
  259. - PROSODY_RESERVATION_ENABLED
  260. - PROSODY_RESERVATION_REST_BASE_URL
  261. - PROSODY_ENABLE_RATE_LIMITS
  262. - PROSODY_ENABLE_S2S
  263. - PROSODY_GUEST_AUTH_TYPE
  264. - PROSODY_HTTP_PORT
  265. - PROSODY_LOG_CONFIG
  266. - PROSODY_MODE
  267. - PROSODY_RATE_LIMIT_LOGIN_RATE
  268. - PROSODY_RATE_LIMIT_SESSION_RATE
  269. - PROSODY_RATE_LIMIT_TIMEOUT
  270. - PROSODY_RATE_LIMIT_ALLOW_RANGES
  271. - PROSODY_RATE_LIMIT_CACHE_SIZE
  272. - PROSODY_S2S_LIMIT
  273. - PROSODY_S2S_PORT
  274. - PROSODY_TRUSTED_PROXIES
  275. - PROSODY_VISITOR_INDEX
  276. - PROSODY_VISITORS_MUC_PREFIX
  277. - PUBLIC_URL
  278. - STUN_HOST
  279. - STUN_PORT
  280. - TURN_CREDENTIALS
  281. - TURN_HOST
  282. - TURNS_HOST
  283. - TURN_PORT
  284. - TURNS_PORT
  285. - TURN_TRANSPORT
  286. - TZ
  287. - VISITORS_MAX_VISITORS_PER_NODE
  288. - VISITORS_XMPP_DOMAIN
  289. - VISITORS_XMPP_SERVER
  290. - VISITORS_XMPP_PORT
  291. - XMPP_BREAKOUT_MUC_MODULES
  292. - XMPP_CONFIGURATION
  293. - XMPP_DOMAIN
  294. - XMPP_AUTH_DOMAIN
  295. - XMPP_GUEST_DOMAIN
  296. - XMPP_MUC_DOMAIN
  297. - XMPP_INTERNAL_MUC_DOMAIN
  298. - XMPP_LOBBY_MUC_MODULES
  299. - XMPP_MODULES
  300. - XMPP_MUC_MODULES
  301. - XMPP_MUC_CONFIGURATION
  302. - XMPP_INTERNAL_MUC_MODULES
  303. - XMPP_RECORDER_DOMAIN
  304. - XMPP_PORT
  305. - XMPP_SERVER_S2S_PORT
  306. - XMPP_SPEAKERSTATS_MODULES
  307. networks:
  308. meet.jitsi:
  309. aliases:
  310. - ${XMPP_SERVER:-xmpp.meet.jitsi}
  311. # Focus component
  312. jicofo:
  313. image: jitsi/jicofo:${JITSI_IMAGE_VERSION:-stable-9457-2}
  314. restart: ${RESTART_POLICY:-unless-stopped}
  315. ports:
  316. - '127.0.0.1:${JICOFO_REST_PORT:-8888}:8888'
  317. volumes:
  318. - ${CONFIG}/jicofo:/config:Z
  319. environment:
  320. - AUTH_TYPE
  321. - BRIDGE_AVG_PARTICIPANT_STRESS
  322. - BRIDGE_STRESS_THRESHOLD
  323. - ENABLE_AUTH
  324. - ENABLE_AUTO_OWNER
  325. - ENABLE_CODEC_VP8
  326. - ENABLE_CODEC_VP9
  327. - ENABLE_CODEC_AV1
  328. - ENABLE_CODEC_H264
  329. - ENABLE_CODEC_OPUS_RED
  330. - ENABLE_JVB_XMPP_SERVER
  331. - ENABLE_OCTO
  332. - ENABLE_OCTO_SCTP
  333. - ENABLE_RECORDING
  334. - ENABLE_SCTP
  335. - ENABLE_VISITORS
  336. - ENABLE_AUTO_LOGIN
  337. - JICOFO_AUTH_LIFETIME
  338. - JICOFO_AUTH_PASSWORD
  339. - JICOFO_AUTH_TYPE
  340. - JICOFO_BRIDGE_REGION_GROUPS
  341. - JICOFO_ENABLE_AUTH
  342. - JICOFO_ENABLE_BRIDGE_HEALTH_CHECKS
  343. - JICOFO_CONF_INITIAL_PARTICIPANT_WAIT_TIMEOUT
  344. - JICOFO_CONF_SINGLE_PARTICIPANT_TIMEOUT
  345. - JICOFO_CONF_SOURCE_SIGNALING_DELAYS
  346. - JICOFO_CONF_MAX_AUDIO_SENDERS
  347. - JICOFO_CONF_MAX_VIDEO_SENDERS
  348. - JICOFO_CONF_STRIP_SIMULCAST
  349. - JICOFO_CONF_SSRC_REWRITING
  350. - JICOFO_ENABLE_HEALTH_CHECKS
  351. - JICOFO_ENABLE_REST
  352. - JICOFO_HEALTH_CHECKS_USE_PRESENCE
  353. - JICOFO_MAX_MEMORY
  354. - JICOFO_MULTI_STREAM_BACKWARD_COMPAT
  355. - JICOFO_OCTO_REGION
  356. - JICOFO_TRUSTED_DOMAINS
  357. - JIBRI_BREWERY_MUC
  358. - JIBRI_REQUEST_RETRIES
  359. - JIBRI_PENDING_TIMEOUT
  360. - JIGASI_BREWERY_MUC
  361. - JIGASI_SIP_URI
  362. - JIGASI_TRUSTED_DOMAINS
  363. - JVB_BREWERY_MUC
  364. - JVB_XMPP_AUTH_DOMAIN
  365. - JVB_XMPP_INTERNAL_MUC_DOMAIN
  366. - JVB_XMPP_PORT
  367. - JVB_XMPP_SERVER
  368. - MAX_BRIDGE_PARTICIPANTS
  369. - OCTO_BRIDGE_SELECTION_STRATEGY
  370. - PROSODY_VISITORS_MUC_PREFIX
  371. - SENTRY_DSN="${JICOFO_SENTRY_DSN:-0}"
  372. - SENTRY_ENVIRONMENT
  373. - SENTRY_RELEASE
  374. - TZ
  375. - VISITORS_MAX_PARTICIPANTS
  376. - VISITORS_MAX_VISITORS_PER_NODE
  377. - VISITORS_XMPP_AUTH_DOMAIN
  378. - VISITORS_XMPP_SERVER
  379. - VISITORS_XMPP_DOMAIN
  380. - XMPP_DOMAIN
  381. - XMPP_AUTH_DOMAIN
  382. - XMPP_INTERNAL_MUC_DOMAIN
  383. - XMPP_MUC_DOMAIN
  384. - XMPP_RECORDER_DOMAIN
  385. - XMPP_SERVER
  386. - XMPP_PORT
  387. - MAX_SSRCS_PER_USER
  388. - MAX_SSRC_GROUPS_PER_USER
  389. depends_on:
  390. - prosody
  391. networks:
  392. meet.jitsi:
  393. # Video bridge
  394. jvb:
  395. image: jitsi/jvb:${JITSI_IMAGE_VERSION:-stable-9457-2}
  396. restart: ${RESTART_POLICY:-unless-stopped}
  397. ports:
  398. - '${JVB_PORT:-10000}:${JVB_PORT:-10000}/udp'
  399. - '127.0.0.1:${JVB_COLIBRI_PORT:-8080}:8080'
  400. volumes:
  401. - ${CONFIG}/jvb:/config:Z
  402. environment:
  403. - AUTOSCALER_SIDECAR_KEY_FILE
  404. - AUTOSCALER_SIDECAR_KEY_ID
  405. - AUTOSCALER_SIDECAR_GROUP_NAME
  406. - AUTOSCALER_SIDECAR_HOST_ID
  407. - AUTOSCALER_SIDECAR_INSTANCE_ID
  408. - AUTOSCALER_SIDECAR_PORT
  409. - AUTOSCALER_SIDECAR_REGION
  410. - AUTOSCALER_SIDECAR_SHUTDOWN_POLLING_INTERVAL
  411. - AUTOSCALER_SIDECAR_STATS_POLLING_INTERVAL
  412. - DOCKER_HOST_ADDRESS
  413. - ENABLE_COLIBRI_WEBSOCKET
  414. - ENABLE_JVB_XMPP_SERVER
  415. - ENABLE_OCTO
  416. - JVB_ADVERTISE_IPS
  417. - JVB_ADVERTISE_PRIVATE_CANDIDATES
  418. - JVB_AUTH_USER
  419. - JVB_AUTH_PASSWORD
  420. - JVB_BREWERY_MUC
  421. - JVB_DISABLE_STUN
  422. - JVB_INSTANCE_ID
  423. - JVB_PORT
  424. - JVB_MUC_NICKNAME
  425. - JVB_STUN_SERVERS
  426. - JVB_LOG_FILE
  427. - JVB_OCTO_BIND_ADDRESS
  428. - JVB_OCTO_REGION
  429. - JVB_OCTO_RELAY_ID
  430. - JVB_REQUIRE_VALID_ADDRESS
  431. - JVB_WS_DOMAIN
  432. - JVB_WS_SERVER_ID
  433. - JVB_XMPP_AUTH_DOMAIN
  434. - JVB_XMPP_INTERNAL_MUC_DOMAIN
  435. - JVB_XMPP_PORT
  436. - JVB_XMPP_SERVER
  437. - PUBLIC_URL
  438. - SENTRY_DSN="${JVB_SENTRY_DSN:-0}"
  439. - SENTRY_ENVIRONMENT
  440. - SENTRY_RELEASE
  441. - COLIBRI_REST_ENABLED
  442. - SHUTDOWN_REST_ENABLED
  443. - TZ
  444. - VIDEOBRIDGE_MAX_MEMORY
  445. - XMPP_AUTH_DOMAIN
  446. - XMPP_INTERNAL_MUC_DOMAIN
  447. - XMPP_SERVER
  448. - XMPP_PORT
  449. depends_on:
  450. - prosody
  451. networks:
  452. meet.jitsi:
  453. # Custom network so all services can communicate using a FQDN
  454. networks:
  455. meet.jitsi: