Advertisement
Guest User

Jitsi

a guest
Jan 4th, 2023
176
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 13.18 KB | None | 0 0
  1. version: '3.5'
  2.  
  3. services:
  4. # Frontend
  5. web:
  6. image: jitsi/web:${JITSI_IMAGE_VERSION:-stable-8138-1}
  7. restart: ${RESTART_POLICY:-unless-stopped}
  8. ports:
  9. - '${HTTP_PORT}:80'
  10. - '${HTTPS_PORT}:443'
  11. volumes:
  12. - ${CONFIG}/web:/config:Z
  13. - ${CONFIG}/web/crontabs:/var/spool/cron/crontabs:Z
  14. - ${CONFIG}/transcripts:/usr/share/jitsi-meet/transcripts:Z
  15. environment:
  16. - AMPLITUDE_ID
  17. - ANALYTICS_SCRIPT_URLS
  18. - ANALYTICS_WHITELISTED_EVENTS
  19. - AUDIO_QUALITY_OPUS_BITRATE
  20. - AUTO_CAPTION_ON_RECORD
  21. - BRANDING_DATA_URL
  22. - CALLSTATS_CUSTOM_SCRIPT_URL
  23. - CALLSTATS_ID
  24. - CALLSTATS_SECRET
  25. - CHROME_EXTENSION_BANNER_JSON
  26. - CONFCODE_URL
  27. - CONFIG_EXTERNAL_CONNECT
  28. - DEFAULT_LANGUAGE
  29. - DEPLOYMENTINFO_ENVIRONMENT
  30. - DEPLOYMENTINFO_ENVIRONMENT_TYPE
  31. - DEPLOYMENTINFO_REGION
  32. - DEPLOYMENTINFO_SHARD
  33. - DEPLOYMENTINFO_USERREGION
  34. - DESKTOP_SHARING_FRAMERATE_MIN
  35. - DESKTOP_SHARING_FRAMERATE_MAX
  36. - DIALIN_NUMBERS_URL
  37. - DIALOUT_AUTH_URL
  38. - DIALOUT_CODES_URL
  39. - DISABLE_AUDIO_LEVELS
  40. - DISABLE_DEEP_LINKING
  41. - DISABLE_GRANT_MODERATOR
  42. - DISABLE_HTTPS
  43. - DISABLE_KICKOUT
  44. - DISABLE_LOCAL_RECORDING
  45. - DISABLE_POLLS
  46. - DISABLE_PRIVATE_CHAT
  47. - DISABLE_PROFILE
  48. - DISABLE_REACTIONS
  49. - DISABLE_REMOTE_VIDEO_MENU
  50. - DISABLE_START_FOR_ALL
  51. - DROPBOX_APPKEY
  52. - DROPBOX_REDIRECT_URI
  53. - DYNAMIC_BRANDING_URL
  54. - ENABLE_AUDIO_PROCESSING
  55. - ENABLE_AUTH
  56. - ENABLE_BREAKOUT_ROOMS
  57. - ENABLE_CALENDAR
  58. - ENABLE_COLIBRI_WEBSOCKET
  59. - ENABLE_E2EPING
  60. - ENABLE_FILE_RECORDING_SHARING
  61. - ENABLE_GUESTS
  62. - ENABLE_HSTS
  63. - ENABLE_HTTP_REDIRECT
  64. - ENABLE_IPV6
  65. - ENABLE_LETSENCRYPT
  66. - ENABLE_LIPSYNC
  67. - ENABLE_NO_AUDIO_DETECTION
  68. - ENABLE_NOISY_MIC_DETECTION
  69. - ENABLE_OCTO
  70. - ENABLE_OPUS_RED
  71. - ENABLE_PREJOIN_PAGE
  72. - ENABLE_P2P
  73. - ENABLE_WELCOME_PAGE
  74. - ENABLE_CLOSE_PAGE
  75. - ENABLE_LIVESTREAMING
  76. - ENABLE_LOCAL_RECORDING_NOTIFY_ALL_PARTICIPANT
  77. - ENABLE_LOCAL_RECORDING_SELF_START
  78. - ENABLE_RECORDING
  79. - ENABLE_REMB
  80. - ENABLE_REQUIRE_DISPLAY_NAME
  81. - ENABLE_SERVICE_RECORDING
  82. - ENABLE_SIMULCAST
  83. - ENABLE_STATS_ID
  84. - ENABLE_STEREO
  85. - ENABLE_SUBDOMAINS
  86. - ENABLE_TALK_WHILE_MUTED
  87. - ENABLE_TCC
  88. - ENABLE_TRANSCRIPTIONS
  89. - ENABLE_XMPP_WEBSOCKET
  90. - ENABLE_JAAS_COMPONENTS
  91. - ETHERPAD_PUBLIC_URL
  92. - ETHERPAD_URL_BASE
  93. - E2EPING_NUM_REQUESTS
  94. - E2EPING_MAX_CONFERENCE_SIZE
  95. - E2EPING_MAX_MESSAGE_PER_SECOND
  96. - GOOGLE_ANALYTICS_ID
  97. - GOOGLE_API_APP_CLIENT_ID
  98. - HIDE_PREMEETING_BUTTONS
  99. - HIDE_PREJOIN_DISPLAY_NAME
  100. - HIDE_PREJOIN_EXTRA_BUTTONS
  101. - INVITE_SERVICE_URL
  102. - JICOFO_AUTH_USER
  103. - LETSENCRYPT_DOMAIN
  104. - LETSENCRYPT_EMAIL
  105. - LETSENCRYPT_USE_STAGING
  106. - MATOMO_ENDPOINT
  107. - MATOMO_SITE_ID
  108. - MICROSOFT_API_APP_CLIENT_ID
  109. - NGINX_RESOLVER
  110. - NGINX_WORKER_PROCESSES
  111. - NGINX_WORKER_CONNECTIONS
  112. - PEOPLE_SEARCH_URL
  113. - PREFERRED_LANGUAGE
  114. - PUBLIC_URL
  115. - P2P_PREFERRED_CODEC
  116. - RESOLUTION
  117. - RESOLUTION_MIN
  118. - RESOLUTION_WIDTH
  119. - RESOLUTION_WIDTH_MIN
  120. - START_AUDIO_MUTED
  121. - START_AUDIO_ONLY
  122. - START_BITRATE
  123. - START_SILENT
  124. - START_WITH_AUDIO_MUTED
  125. - START_VIDEO_MUTED
  126. - START_WITH_VIDEO_MUTED
  127. - TESTING_CAP_SCREENSHARE_BITRATE
  128. - TESTING_OCTO_PROBABILITY
  129. - TOKEN_AUTH_URL
  130. - TOOLBAR_BUTTONS
  131. - TRANSLATION_LANGUAGES
  132. - TRANSLATION_LANGUAGES_HEAD
  133. - TZ
  134. - USE_APP_LANGUAGE
  135. - VIDEOQUALITY_BITRATE_H264_LOW
  136. - VIDEOQUALITY_BITRATE_H264_STANDARD
  137. - VIDEOQUALITY_BITRATE_H264_HIGH
  138. - VIDEOQUALITY_BITRATE_VP8_LOW
  139. - VIDEOQUALITY_BITRATE_VP8_STANDARD
  140. - VIDEOQUALITY_BITRATE_VP8_HIGH
  141. - VIDEOQUALITY_BITRATE_VP9_LOW
  142. - VIDEOQUALITY_BITRATE_VP9_STANDARD
  143. - VIDEOQUALITY_BITRATE_VP9_HIGH
  144. - VIDEOQUALITY_ENFORCE_PREFERRED_CODEC
  145. - VIDEOQUALITY_PREFERRED_CODEC
  146. - XMPP_AUTH_DOMAIN
  147. - XMPP_BOSH_URL_BASE
  148. - XMPP_DOMAIN
  149. - XMPP_GUEST_DOMAIN
  150. - XMPP_MUC_DOMAIN
  151. - XMPP_RECORDER_DOMAIN
  152. - XMPP_PORT
  153. networks:
  154. meet.jitsi:
  155.  
  156. # XMPP server
  157. prosody:
  158. image: jitsi/prosody:${JITSI_IMAGE_VERSION:-stable-8138-1}
  159. restart: ${RESTART_POLICY:-unless-stopped}
  160. expose:
  161. - '${XMPP_PORT:-5222}'
  162. - '5347'
  163. - '5280'
  164. volumes:
  165. - ${CONFIG}/prosody/config:/config:Z
  166. - ${CONFIG}/prosody/prosody-plugins-custom:/prosody-plugins-custom:Z
  167. environment:
  168. - AUTH_TYPE
  169. - DISABLE_POLLS
  170. - ENABLE_AUTH
  171. - ENABLE_AV_MODERATION
  172. - ENABLE_BREAKOUT_ROOMS
  173. - ENABLE_END_CONFERENCE
  174. - ENABLE_GUESTS
  175. - ENABLE_IPV6
  176. - ENABLE_LOBBY
  177. - ENABLE_RECORDING
  178. - ENABLE_XMPP_WEBSOCKET
  179. - ENABLE_JAAS_COMPONENTS
  180. - GC_TYPE
  181. - GC_INC_TH
  182. - GC_INC_SPEED
  183. - GC_INC_STEP_SIZE
  184. - GC_GEN_MIN_TH
  185. - GC_GEN_MAX_TH
  186. - GLOBAL_CONFIG
  187. - GLOBAL_MODULES
  188. - JIBRI_RECORDER_USER
  189. - JIBRI_RECORDER_PASSWORD
  190. - JIBRI_XMPP_USER
  191. - JIBRI_XMPP_PASSWORD
  192. - JICOFO_AUTH_USER
  193. - JICOFO_AUTH_PASSWORD
  194. - JICOFO_COMPONENT_SECRET
  195. - JIGASI_XMPP_USER
  196. - JIGASI_XMPP_PASSWORD
  197. - JVB_AUTH_USER
  198. - JVB_AUTH_PASSWORD
  199. - JWT_APP_ID
  200. - JWT_APP_SECRET
  201. - JWT_ACCEPTED_ISSUERS
  202. - JWT_ACCEPTED_AUDIENCES
  203. - JWT_ASAP_KEYSERVER
  204. - JWT_ALLOW_EMPTY
  205. - JWT_AUTH_TYPE
  206. - JWT_ENABLE_DOMAIN_VERIFICATION
  207. - JWT_TOKEN_AUTH_MODULE
  208. - MATRIX_UVS_URL
  209. - MATRIX_UVS_ISSUER
  210. - MATRIX_UVS_AUTH_TOKEN
  211. - MATRIX_UVS_SYNC_POWER_LEVELS
  212. - LOG_LEVEL
  213. - LDAP_AUTH_METHOD
  214. - LDAP_BASE
  215. - LDAP_BINDDN
  216. - LDAP_BINDPW
  217. - LDAP_FILTER
  218. - LDAP_VERSION
  219. - LDAP_TLS_CIPHERS
  220. - LDAP_TLS_CHECK_PEER
  221. - LDAP_TLS_CACERT_FILE
  222. - LDAP_TLS_CACERT_DIR
  223. - LDAP_START_TLS
  224. - LDAP_URL
  225. - LDAP_USE_TLS
  226. - MAX_PARTICIPANTS
  227. - PROSODY_RESERVATION_ENABLED
  228. - PROSODY_RESERVATION_REST_BASE_URL
  229. - PUBLIC_URL
  230. - TURN_CREDENTIALS
  231. - TURN_HOST
  232. - TURNS_HOST
  233. - TURN_PORT
  234. - TURNS_PORT
  235. - TURN_TRANSPORT
  236. - TZ
  237. - XMPP_DOMAIN
  238. - XMPP_AUTH_DOMAIN
  239. - XMPP_GUEST_DOMAIN
  240. - XMPP_MUC_DOMAIN
  241. - XMPP_INTERNAL_MUC_DOMAIN
  242. - XMPP_MODULES
  243. - XMPP_MUC_MODULES
  244. - XMPP_MUC_CONFIGURATION
  245. - XMPP_INTERNAL_MUC_MODULES
  246. - XMPP_RECORDER_DOMAIN
  247. - XMPP_PORT
  248. networks:
  249. meet.jitsi:
  250. aliases:
  251. - ${XMPP_SERVER:-xmpp.meet.jitsi}
  252.  
  253. # Focus component
  254. jicofo:
  255. image: jitsi/jicofo:${JITSI_IMAGE_VERSION:-stable-8138-1}
  256. restart: ${RESTART_POLICY:-unless-stopped}
  257. volumes:
  258. - ${CONFIG}/jicofo:/config:Z
  259. environment:
  260. - AUTH_TYPE
  261. - BRIDGE_AVG_PARTICIPANT_STRESS
  262. - BRIDGE_STRESS_THRESHOLD
  263. - ENABLE_AUTH
  264. - ENABLE_AUTO_OWNER
  265. - ENABLE_CODEC_VP8
  266. - ENABLE_CODEC_VP9
  267. - ENABLE_CODEC_H264
  268. - ENABLE_OCTO
  269. - ENABLE_RECORDING
  270. - ENABLE_SCTP
  271. - ENABLE_AUTO_LOGIN
  272. - JICOFO_AUTH_USER
  273. - JICOFO_AUTH_PASSWORD
  274. - JICOFO_ENABLE_BRIDGE_HEALTH_CHECKS
  275. - JICOFO_CONF_INITIAL_PARTICIPANT_WAIT_TIMEOUT
  276. - JICOFO_CONF_SINGLE_PARTICIPANT_TIMEOUT
  277. - JICOFO_ENABLE_HEALTH_CHECKS
  278. - JIBRI_BREWERY_MUC
  279. - JIBRI_REQUEST_RETRIES
  280. - JIBRI_PENDING_TIMEOUT
  281. - JIGASI_BREWERY_MUC
  282. - JIGASI_SIP_URI
  283. - JVB_BREWERY_MUC
  284. - MAX_BRIDGE_PARTICIPANTS
  285. - OCTO_BRIDGE_SELECTION_STRATEGY
  286. - SENTRY_DSN="${JICOFO_SENTRY_DSN:-0}"
  287. - SENTRY_ENVIRONMENT
  288. - SENTRY_RELEASE
  289. - TZ
  290. - XMPP_DOMAIN
  291. - XMPP_AUTH_DOMAIN
  292. - XMPP_INTERNAL_MUC_DOMAIN
  293. - XMPP_MUC_DOMAIN
  294. - XMPP_RECORDER_DOMAIN
  295. - XMPP_SERVER
  296. - XMPP_PORT
  297. depends_on:
  298. - prosody
  299. networks:
  300. meet.jitsi:
  301.  
  302. # Video bridge
  303. jvb:
  304. image: jitsi/jvb:${JITSI_IMAGE_VERSION:-stable-8138-1}
  305. restart: ${RESTART_POLICY:-unless-stopped}
  306. ports:
  307. - '${JVB_PORT:-10000}:${JVB_PORT:-10000}/udp'
  308. - '127.0.0.1:${JVB_COLIBRI_PORT:-8080}:8080'
  309. volumes:
  310. - ${CONFIG}/jvb:/config:Z
  311. environment:
  312. - DOCKER_HOST_ADDRESS
  313. - ENABLE_COLIBRI_WEBSOCKET
  314. - ENABLE_OCTO
  315. - JVB_ADVERTISE_IPS
  316. - JVB_ADVERTISE_PRIVATE_CANDIDATES
  317. - JVB_AUTH_USER
  318. - JVB_AUTH_PASSWORD
  319. - JVB_BREWERY_MUC
  320. - JVB_DISABLE_STUN
  321. - JVB_PORT
  322. - JVB_MUC_NICKNAME
  323. - JVB_STUN_SERVERS
  324. - JVB_OCTO_BIND_ADDRESS
  325. - JVB_OCTO_REGION
  326. - JVB_OCTO_RELAY_ID
  327. - JVB_WS_DOMAIN
  328. - JVB_WS_SERVER_ID
  329. - PUBLIC_URL
  330. - SENTRY_DSN="${JVB_SENTRY_DSN:-0}"
  331. - SENTRY_ENVIRONMENT
  332. - SENTRY_RELEASE
  333. - COLIBRI_REST_ENABLED
  334. - SHUTDOWN_REST_ENABLED
  335. - TZ
  336. - XMPP_AUTH_DOMAIN
  337. - XMPP_INTERNAL_MUC_DOMAIN
  338. - XMPP_SERVER
  339. - XMPP_PORT
  340. depends_on:
  341. - prosody
  342. networks:
  343. meet.jitsi:
  344.  
  345. # Custom network so all services can communicate using a FQDN
  346. networks:
  347. meet.jitsi:
  348. ----------------------------------------------------------------------------------------
  349.  
  350. #Jitsi Meet and EtherPad reverse proxy
  351. <VirtualHost *:443>
  352. ServerName meet.folklandmanagement.com:443
  353. SSLProxyEngine on
  354. RequestHeader set X-Forwarded-Proto "https"
  355. ProxyTimeout 900
  356. ProxyVia On
  357. ProxyRequests Off
  358. ProxyPreserveHost On
  359. Options FollowSymLinks MultiViews
  360. <LocationMatch />
  361. AllowOverride All
  362. Order allow,deny
  363. allow from all
  364. </LocationMatch>
  365. #Jisti Meet
  366. <Location />
  367. ProxyPass http://127.0.0.1:8440/
  368. ProxyPassReverse http://127.0.0.1:8440/
  369. </Location>
  370. # Do not forget WebSocket proxy:
  371. RewriteEngine on
  372. RewriteCond %{HTTP:Connection} Upgrade [NC]
  373. RewriteCond %{HTTP:Upgrade} websocket [NC]
  374. RewriteRule ^/?(.*) "ws://127.0.0.1:8440/$1" [P,L]
  375. #EtherPad
  376. <Location /pad/>
  377. ProxyPass http://127.0.0.1:9001/ retry=0 timeout=30
  378. ProxyPassReverse http://127.0.0.1:9001/
  379. AddOutputFilterByType SUBSTITUTE text/html
  380. Substitute "s|meet.folklandmanagement.com/|meet.folklandmanagement.com/pad/|i"
  381. </Location>
  382. <Location pad/socket.io>
  383. # This is needed to handle websocket transport through the proxy, since
  384. # etherpad does not use a specific sub-folder, such as /ws/
  385. # to handle this kind of traffic.
  386. RewriteEngine On
  387. RewriteCond %{QUERY_STRING} transport=websocket [NC]
  388. RewriteRule /(.*) ws://127.0.0.1:9001/socket.io/$1 [P,L]
  389. ProxyPass http://127.0.0.1:9001/socket.io retry=0 timeout=30
  390. ProxyPassReverse http://127.0.0.1:9001/socket.io
  391. AddOutputFilterByType SUBSTITUTE text/html
  392. Substitute "s|meet.folklandmanagement.com/|meet.folklandmanagement.com/pad/|i"
  393. </Location>
  394. SSLCertificateKeyFile "/etc/httpd/certs/folklandmanagement.com.key"
  395. SSLCertificateChainFile "/etc/httpd/certs/DigiCertCA.crt"
  396. SSLCertificateFile "/etc/httpd/certs/folklandmanagement.com.crt"
  397. </VirtualHost>
  398.  
  399.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement