docker-compose.yml 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171
  1. version: '3'
  2. services:
  3. # Frontend
  4. web:
  5. image: jitsi/web:latest
  6. restart: ${RESTART_POLICY}
  7. ports:
  8. - '${HTTP_PORT}:80'
  9. - '${HTTPS_PORT}:443'
  10. volumes:
  11. - ${CONFIG}/web:/config:Z
  12. - ${CONFIG}/web/letsencrypt:/etc/letsencrypt:Z
  13. - ${CONFIG}/transcripts:/usr/share/jitsi-meet/transcripts:Z
  14. environment:
  15. - ENABLE_AUTH
  16. - ENABLE_GUESTS
  17. - ENABLE_LETSENCRYPT
  18. - ENABLE_HTTP_REDIRECT
  19. - ENABLE_TRANSCRIPTIONS
  20. - DISABLE_HTTPS
  21. - JICOFO_AUTH_USER
  22. - LETSENCRYPT_DOMAIN
  23. - LETSENCRYPT_EMAIL
  24. - PUBLIC_URL
  25. - XMPP_DOMAIN
  26. - XMPP_AUTH_DOMAIN
  27. - XMPP_BOSH_URL_BASE
  28. - XMPP_GUEST_DOMAIN
  29. - XMPP_MUC_DOMAIN
  30. - XMPP_RECORDER_DOMAIN
  31. - ETHERPAD_URL_BASE
  32. - ETHERPAD_PUBLIC_URL
  33. - TZ
  34. - JIBRI_BREWERY_MUC
  35. - JIBRI_PENDING_TIMEOUT
  36. - JIBRI_XMPP_USER
  37. - JIBRI_XMPP_PASSWORD
  38. - JIBRI_RECORDER_USER
  39. - JIBRI_RECORDER_PASSWORD
  40. - ENABLE_RECORDING
  41. networks:
  42. meet.jitsi:
  43. aliases:
  44. - ${XMPP_DOMAIN}
  45. # XMPP server
  46. prosody:
  47. image: jitsi/prosody:latest
  48. restart: ${RESTART_POLICY}
  49. expose:
  50. - '5222'
  51. - '5347'
  52. - '5280'
  53. volumes:
  54. - ${CONFIG}/prosody/config:/config:Z
  55. - ${CONFIG}/prosody/prosody-plugins-custom:/prosody-plugins-custom:Z
  56. environment:
  57. - AUTH_TYPE
  58. - ENABLE_AUTH
  59. - ENABLE_GUESTS
  60. - ENABLE_LOBBY
  61. - GLOBAL_MODULES
  62. - GLOBAL_CONFIG
  63. - LDAP_URL
  64. - LDAP_BASE
  65. - LDAP_BINDDN
  66. - LDAP_BINDPW
  67. - LDAP_FILTER
  68. - LDAP_AUTH_METHOD
  69. - LDAP_VERSION
  70. - LDAP_USE_TLS
  71. - LDAP_TLS_CIPHERS
  72. - LDAP_TLS_CHECK_PEER
  73. - LDAP_TLS_CACERT_FILE
  74. - LDAP_TLS_CACERT_DIR
  75. - LDAP_START_TLS
  76. - XMPP_DOMAIN
  77. - XMPP_AUTH_DOMAIN
  78. - XMPP_GUEST_DOMAIN
  79. - XMPP_MUC_DOMAIN
  80. - XMPP_INTERNAL_MUC_DOMAIN
  81. - XMPP_MODULES
  82. - XMPP_MUC_MODULES
  83. - XMPP_INTERNAL_MUC_MODULES
  84. - XMPP_RECORDER_DOMAIN
  85. - JICOFO_COMPONENT_SECRET
  86. - JICOFO_AUTH_USER
  87. - JICOFO_AUTH_PASSWORD
  88. - JVB_AUTH_USER
  89. - JVB_AUTH_PASSWORD
  90. - JIGASI_XMPP_USER
  91. - JIGASI_XMPP_PASSWORD
  92. - JIBRI_XMPP_USER
  93. - JIBRI_XMPP_PASSWORD
  94. - JIBRI_RECORDER_USER
  95. - JIBRI_RECORDER_PASSWORD
  96. - JWT_APP_ID
  97. - JWT_APP_SECRET
  98. - JWT_ACCEPTED_ISSUERS
  99. - JWT_ACCEPTED_AUDIENCES
  100. - JWT_ASAP_KEYSERVER
  101. - JWT_ALLOW_EMPTY
  102. - JWT_AUTH_TYPE
  103. - JWT_TOKEN_AUTH_MODULE
  104. - LOG_LEVEL
  105. - TZ
  106. networks:
  107. meet.jitsi:
  108. aliases:
  109. - ${XMPP_SERVER}
  110. # Focus component
  111. jicofo:
  112. image: jitsi/jicofo:latest
  113. restart: ${RESTART_POLICY}
  114. volumes:
  115. - ${CONFIG}/jicofo:/config:Z
  116. environment:
  117. - AUTH_TYPE
  118. - ENABLE_AUTH
  119. - XMPP_DOMAIN
  120. - XMPP_AUTH_DOMAIN
  121. - XMPP_INTERNAL_MUC_DOMAIN
  122. - XMPP_SERVER
  123. - JICOFO_COMPONENT_SECRET
  124. - JICOFO_AUTH_USER
  125. - JICOFO_AUTH_PASSWORD
  126. - JICOFO_RESERVATION_REST_BASE_URL
  127. - JVB_BREWERY_MUC
  128. - JIGASI_BREWERY_MUC
  129. - JIGASI_SIP_URI
  130. - JIBRI_BREWERY_MUC
  131. - JIBRI_PENDING_TIMEOUT
  132. - TZ
  133. depends_on:
  134. - prosody
  135. networks:
  136. meet.jitsi:
  137. # Video bridge
  138. jvb:
  139. image: jitsi/jvb:latest
  140. restart: ${RESTART_POLICY}
  141. ports:
  142. - '${JVB_PORT}:${JVB_PORT}/udp'
  143. - '${JVB_TCP_PORT}:${JVB_TCP_PORT}'
  144. volumes:
  145. - ${CONFIG}/jvb:/config:Z
  146. environment:
  147. - DOCKER_HOST_ADDRESS
  148. - XMPP_AUTH_DOMAIN
  149. - XMPP_INTERNAL_MUC_DOMAIN
  150. - XMPP_SERVER
  151. - JVB_AUTH_USER
  152. - JVB_AUTH_PASSWORD
  153. - JVB_BREWERY_MUC
  154. - JVB_PORT
  155. - JVB_TCP_HARVESTER_DISABLED
  156. - JVB_TCP_PORT
  157. - JVB_STUN_SERVERS
  158. - JVB_ENABLE_APIS
  159. - TZ
  160. depends_on:
  161. - prosody
  162. networks:
  163. meet.jitsi:
  164. # Custom network so all services can communicate using a FQDN
  165. networks:
  166. meet.jitsi: