docker-compose.yml 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342
  1. version: '3.5'
  2. services:
  3. # Frontend
  4. web:
  5. image: jitsi/web:${JITSI_IMAGE_VERSION:-stable-8044-1}
  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. - BRANDING_DATA_URL
  20. - CALLSTATS_CUSTOM_SCRIPT_URL
  21. - CALLSTATS_ID
  22. - CALLSTATS_SECRET
  23. - CHROME_EXTENSION_BANNER_JSON
  24. - CONFCODE_URL
  25. - CONFIG_EXTERNAL_CONNECT
  26. - DEFAULT_LANGUAGE
  27. - DEPLOYMENTINFO_ENVIRONMENT
  28. - DEPLOYMENTINFO_ENVIRONMENT_TYPE
  29. - DEPLOYMENTINFO_REGION
  30. - DEPLOYMENTINFO_SHARD
  31. - DEPLOYMENTINFO_USERREGION
  32. - DESKTOP_SHARING_FRAMERATE_MIN
  33. - DESKTOP_SHARING_FRAMERATE_MAX
  34. - DIALIN_NUMBERS_URL
  35. - DIALOUT_AUTH_URL
  36. - DIALOUT_CODES_URL
  37. - DISABLE_AUDIO_LEVELS
  38. - DISABLE_DEEP_LINKING
  39. - DISABLE_GRANT_MODERATOR
  40. - DISABLE_HTTPS
  41. - DISABLE_KICKOUT
  42. - DISABLE_LOCAL_RECORDING
  43. - DISABLE_POLLS
  44. - DISABLE_PRIVATE_CHAT
  45. - DISABLE_PROFILE
  46. - DISABLE_REACTIONS
  47. - DISABLE_REMOTE_VIDEO_MENU
  48. - DROPBOX_APPKEY
  49. - DROPBOX_REDIRECT_URI
  50. - DYNAMIC_BRANDING_URL
  51. - ENABLE_AUDIO_PROCESSING
  52. - ENABLE_AUTH
  53. - ENABLE_BREAKOUT_ROOMS
  54. - ENABLE_CALENDAR
  55. - ENABLE_COLIBRI_WEBSOCKET
  56. - ENABLE_E2EPING
  57. - ENABLE_FILE_RECORDING_SHARING
  58. - ENABLE_GUESTS
  59. - ENABLE_HSTS
  60. - ENABLE_HTTP_REDIRECT
  61. - ENABLE_IPV6
  62. - ENABLE_LETSENCRYPT
  63. - ENABLE_LIPSYNC
  64. - ENABLE_NO_AUDIO_DETECTION
  65. - ENABLE_NOISY_MIC_DETECTION
  66. - ENABLE_OCTO
  67. - ENABLE_OPUS_RED
  68. - ENABLE_PREJOIN_PAGE
  69. - ENABLE_P2P
  70. - ENABLE_WELCOME_PAGE
  71. - ENABLE_CLOSE_PAGE
  72. - ENABLE_LIVESTREAMING
  73. - ENABLE_LOCAL_RECORDING_NOTIFY_ALL_PARTICIPANT
  74. - ENABLE_LOCAL_RECORDING_SELF_START
  75. - ENABLE_RECORDING
  76. - ENABLE_REMB
  77. - ENABLE_REQUIRE_DISPLAY_NAME
  78. - ENABLE_SERVICE_RECORDING
  79. - ENABLE_SIMULCAST
  80. - ENABLE_STATS_ID
  81. - ENABLE_STEREO
  82. - ENABLE_SUBDOMAINS
  83. - ENABLE_TALK_WHILE_MUTED
  84. - ENABLE_TCC
  85. - ENABLE_TRANSCRIPTIONS
  86. - ENABLE_XMPP_WEBSOCKET
  87. - ENABLE_JAAS_COMPONENTS
  88. - ENABLE_MULTI_STREAM
  89. - ETHERPAD_PUBLIC_URL
  90. - ETHERPAD_URL_BASE
  91. - E2EPING_NUM_REQUESTS
  92. - E2EPING_MAX_CONFERENCE_SIZE
  93. - E2EPING_MAX_MESSAGE_PER_SECOND
  94. - GOOGLE_ANALYTICS_ID
  95. - GOOGLE_API_APP_CLIENT_ID
  96. - HIDE_PREMEETING_BUTTONS
  97. - HIDE_PREJOIN_DISPLAY_NAME
  98. - HIDE_PREJOIN_EXTRA_BUTTONS
  99. - INVITE_SERVICE_URL
  100. - JICOFO_AUTH_USER
  101. - LETSENCRYPT_DOMAIN
  102. - LETSENCRYPT_EMAIL
  103. - LETSENCRYPT_USE_STAGING
  104. - MATOMO_ENDPOINT
  105. - MATOMO_SITE_ID
  106. - MICROSOFT_API_APP_CLIENT_ID
  107. - NGINX_RESOLVER
  108. - NGINX_WORKER_PROCESSES
  109. - NGINX_WORKER_CONNECTIONS
  110. - PEOPLE_SEARCH_URL
  111. - PUBLIC_URL
  112. - P2P_PREFERRED_CODEC
  113. - RESOLUTION
  114. - RESOLUTION_MIN
  115. - RESOLUTION_WIDTH
  116. - RESOLUTION_WIDTH_MIN
  117. - START_AUDIO_MUTED
  118. - START_AUDIO_ONLY
  119. - START_BITRATE
  120. - START_SILENT
  121. - START_WITH_AUDIO_MUTED
  122. - START_VIDEO_MUTED
  123. - START_WITH_VIDEO_MUTED
  124. - TESTING_CAP_SCREENSHARE_BITRATE
  125. - TESTING_OCTO_PROBABILITY
  126. - TOKEN_AUTH_URL
  127. - TOOLBAR_BUTTONS
  128. - TZ
  129. - VIDEOQUALITY_BITRATE_H264_LOW
  130. - VIDEOQUALITY_BITRATE_H264_STANDARD
  131. - VIDEOQUALITY_BITRATE_H264_HIGH
  132. - VIDEOQUALITY_BITRATE_VP8_LOW
  133. - VIDEOQUALITY_BITRATE_VP8_STANDARD
  134. - VIDEOQUALITY_BITRATE_VP8_HIGH
  135. - VIDEOQUALITY_BITRATE_VP9_LOW
  136. - VIDEOQUALITY_BITRATE_VP9_STANDARD
  137. - VIDEOQUALITY_BITRATE_VP9_HIGH
  138. - VIDEOQUALITY_ENFORCE_PREFERRED_CODEC
  139. - VIDEOQUALITY_PREFERRED_CODEC
  140. - XMPP_AUTH_DOMAIN
  141. - XMPP_BOSH_URL_BASE
  142. - XMPP_DOMAIN
  143. - XMPP_GUEST_DOMAIN
  144. - XMPP_MUC_DOMAIN
  145. - XMPP_RECORDER_DOMAIN
  146. - XMPP_PORT
  147. networks:
  148. meet.jitsi:
  149. # XMPP server
  150. prosody:
  151. image: jitsi/prosody:${JITSI_IMAGE_VERSION:-stable-8044-1}
  152. restart: ${RESTART_POLICY:-unless-stopped}
  153. expose:
  154. - '${XMPP_PORT:-5222}'
  155. - '5347'
  156. - '5280'
  157. volumes:
  158. - ${CONFIG}/prosody/config:/config:Z
  159. - ${CONFIG}/prosody/prosody-plugins-custom:/prosody-plugins-custom:Z
  160. environment:
  161. - AUTH_TYPE
  162. - DISABLE_POLLS
  163. - ENABLE_AUTH
  164. - ENABLE_AV_MODERATION
  165. - ENABLE_BREAKOUT_ROOMS
  166. - ENABLE_END_CONFERENCE
  167. - ENABLE_GUESTS
  168. - ENABLE_IPV6
  169. - ENABLE_LOBBY
  170. - ENABLE_RECORDING
  171. - ENABLE_XMPP_WEBSOCKET
  172. - ENABLE_JAAS_COMPONENTS
  173. - GC_TYPE
  174. - GC_INC_TH
  175. - GC_INC_SPEED
  176. - GC_INC_STEP_SIZE
  177. - GC_GEN_MIN_TH
  178. - GC_GEN_MAX_TH
  179. - GLOBAL_CONFIG
  180. - GLOBAL_MODULES
  181. - JIBRI_RECORDER_USER
  182. - JIBRI_RECORDER_PASSWORD
  183. - JIBRI_XMPP_USER
  184. - JIBRI_XMPP_PASSWORD
  185. - JICOFO_AUTH_USER
  186. - JICOFO_AUTH_PASSWORD
  187. - JICOFO_COMPONENT_SECRET
  188. - JIGASI_XMPP_USER
  189. - JIGASI_XMPP_PASSWORD
  190. - JVB_AUTH_USER
  191. - JVB_AUTH_PASSWORD
  192. - JWT_APP_ID
  193. - JWT_APP_SECRET
  194. - JWT_ACCEPTED_ISSUERS
  195. - JWT_ACCEPTED_AUDIENCES
  196. - JWT_ASAP_KEYSERVER
  197. - JWT_ALLOW_EMPTY
  198. - JWT_AUTH_TYPE
  199. - JWT_ENABLE_DOMAIN_VERIFICATION
  200. - JWT_TOKEN_AUTH_MODULE
  201. - MATRIX_UVS_URL
  202. - MATRIX_UVS_ISSUER
  203. - MATRIX_UVS_AUTH_TOKEN
  204. - MATRIX_UVS_SYNC_POWER_LEVELS
  205. - LOG_LEVEL
  206. - LDAP_AUTH_METHOD
  207. - LDAP_BASE
  208. - LDAP_BINDDN
  209. - LDAP_BINDPW
  210. - LDAP_FILTER
  211. - LDAP_VERSION
  212. - LDAP_TLS_CIPHERS
  213. - LDAP_TLS_CHECK_PEER
  214. - LDAP_TLS_CACERT_FILE
  215. - LDAP_TLS_CACERT_DIR
  216. - LDAP_START_TLS
  217. - LDAP_URL
  218. - LDAP_USE_TLS
  219. - MAX_PARTICIPANTS
  220. - PROSODY_RESERVATION_ENABLED
  221. - PROSODY_RESERVATION_REST_BASE_URL
  222. - PUBLIC_URL
  223. - TURN_CREDENTIALS
  224. - TURN_HOST
  225. - TURNS_HOST
  226. - TURN_PORT
  227. - TURNS_PORT
  228. - TZ
  229. - XMPP_DOMAIN
  230. - XMPP_AUTH_DOMAIN
  231. - XMPP_GUEST_DOMAIN
  232. - XMPP_MUC_DOMAIN
  233. - XMPP_INTERNAL_MUC_DOMAIN
  234. - XMPP_MODULES
  235. - XMPP_MUC_MODULES
  236. - XMPP_MUC_CONFIGURATION
  237. - XMPP_INTERNAL_MUC_MODULES
  238. - XMPP_RECORDER_DOMAIN
  239. - XMPP_PORT
  240. networks:
  241. meet.jitsi:
  242. aliases:
  243. - ${XMPP_SERVER:-xmpp.meet.jitsi}
  244. # Focus component
  245. jicofo:
  246. image: jitsi/jicofo:${JITSI_IMAGE_VERSION:-stable-8044-1}
  247. restart: ${RESTART_POLICY:-unless-stopped}
  248. volumes:
  249. - ${CONFIG}/jicofo:/config:Z
  250. environment:
  251. - AUTH_TYPE
  252. - BRIDGE_AVG_PARTICIPANT_STRESS
  253. - BRIDGE_STRESS_THRESHOLD
  254. - ENABLE_AUTH
  255. - ENABLE_AUTO_OWNER
  256. - ENABLE_CODEC_VP8
  257. - ENABLE_CODEC_VP9
  258. - ENABLE_CODEC_H264
  259. - ENABLE_OCTO
  260. - ENABLE_RECORDING
  261. - ENABLE_SCTP
  262. - ENABLE_AUTO_LOGIN
  263. - JICOFO_AUTH_USER
  264. - JICOFO_AUTH_PASSWORD
  265. - JICOFO_ENABLE_BRIDGE_HEALTH_CHECKS
  266. - JICOFO_CONF_INITIAL_PARTICIPANT_WAIT_TIMEOUT
  267. - JICOFO_CONF_SINGLE_PARTICIPANT_TIMEOUT
  268. - JICOFO_ENABLE_HEALTH_CHECKS
  269. - JIBRI_BREWERY_MUC
  270. - JIBRI_REQUEST_RETRIES
  271. - JIBRI_PENDING_TIMEOUT
  272. - JIGASI_BREWERY_MUC
  273. - JIGASI_SIP_URI
  274. - JVB_BREWERY_MUC
  275. - MAX_BRIDGE_PARTICIPANTS
  276. - OCTO_BRIDGE_SELECTION_STRATEGY
  277. - SENTRY_DSN="${JICOFO_SENTRY_DSN:-0}"
  278. - SENTRY_ENVIRONMENT
  279. - SENTRY_RELEASE
  280. - TZ
  281. - XMPP_DOMAIN
  282. - XMPP_AUTH_DOMAIN
  283. - XMPP_INTERNAL_MUC_DOMAIN
  284. - XMPP_MUC_DOMAIN
  285. - XMPP_RECORDER_DOMAIN
  286. - XMPP_SERVER
  287. - XMPP_PORT
  288. depends_on:
  289. - prosody
  290. networks:
  291. meet.jitsi:
  292. # Video bridge
  293. jvb:
  294. image: jitsi/jvb:${JITSI_IMAGE_VERSION:-stable-8044-1}
  295. restart: ${RESTART_POLICY:-unless-stopped}
  296. ports:
  297. - '${JVB_PORT:-10000}:${JVB_PORT:-10000}/udp'
  298. - '127.0.0.1:${JVB_COLIBRI_PORT:-8080}:8080'
  299. volumes:
  300. - ${CONFIG}/jvb:/config:Z
  301. environment:
  302. - DOCKER_HOST_ADDRESS
  303. - ENABLE_COLIBRI_WEBSOCKET
  304. - ENABLE_OCTO
  305. - ENABLE_MULTI_STREAM
  306. - JVB_ADVERTISE_IPS
  307. - JVB_ADVERTISE_PRIVATE_CANDIDATES
  308. - JVB_AUTH_USER
  309. - JVB_AUTH_PASSWORD
  310. - JVB_BREWERY_MUC
  311. - JVB_DISABLE_STUN
  312. - JVB_PORT
  313. - JVB_MUC_NICKNAME
  314. - JVB_STUN_SERVERS
  315. - JVB_OCTO_BIND_ADDRESS
  316. - JVB_OCTO_REGION
  317. - JVB_OCTO_RELAY_ID
  318. - JVB_WS_DOMAIN
  319. - JVB_WS_SERVER_ID
  320. - PUBLIC_URL
  321. - SENTRY_DSN="${JVB_SENTRY_DSN:-0}"
  322. - SENTRY_ENVIRONMENT
  323. - SENTRY_RELEASE
  324. - COLIBRI_REST_ENABLED
  325. - SHUTDOWN_REST_ENABLED
  326. - TZ
  327. - XMPP_AUTH_DOMAIN
  328. - XMPP_INTERNAL_MUC_DOMAIN
  329. - XMPP_SERVER
  330. - XMPP_PORT
  331. depends_on:
  332. - prosody
  333. networks:
  334. meet.jitsi:
  335. # Custom network so all services can communicate using a FQDN
  336. networks:
  337. meet.jitsi: