version: "3" services: web: image: ${WEB_IMG:-jitsi/web}:${WEB_TAG:-latest} container_name: ${WEB_CONTAINER_NAME:-jitsi-web} restart: ${WEB_RESTART:-unless-stopped} expose: - "80" - "443" networks: meet.jitsi: webservices: volumes: - ${LOCAL_STACK_DIR:-./vol}/web:/config:Z - ${LOCAL_STACK_DIR:-./vol}/transcripts:/usr/share/jitsi-meet/transcripts:Z - ${LOCAL_STACK_DIR:-./vol}/web/custom/images:/usr/share/jitsi-meet/images:ro - ${LOCAL_STACK_DIR:-./vol}/web/custom/title.html:/usr/share/jitsi-meet/title.html:ro - ${LOCAL_STACK_DIR:-./vol}/web/custom/body.html:/usr/share/jitsi-meet/body.html:ro - ${LOCAL_STACK_DIR:-./vol}/web/custom/css/custom.css:/usr/share/jitsi-meet/css/custom.css:ro env_file: - web.env - web-prosody-jicofo.env - web-prosody.env environment: - TZ=${TZ:-Etc/UTC} - PUBLIC_URL - XMPP_AUTH_DOMAIN=${XMPP_AUTH_DOMAIN:-auth.meet.jitsi} - XMPP_BOSH_URL_BASE=${XMPP_BOSH_URL_BASE:-http://xmpp.meet.jitsi:5280} prosody: image: ${PRS_IMG:-jitsi/prosody}:${PRS_TAG:-latest} container_name: ${PRS_CONTAINER_NAME:-jitsi-prosody} restart: ${PRS_RESTART:-unless-stopped} expose: - "5222" - "5347" - "5280" networks: meet.jitsi: aliases: - ${XMPP_SERVER:-xmpp.meet.jitsi} volumes: - ${LOCAL_STACK_DIR:-./vol}/prosody/config:/config:Z - ${LOCAL_STACK_DIR:-./vol}/prosody/prosody-plugins-custom:/prosody-plugins-custom:Z env_file: - prosody.env - prosody-jicofo.env - prosody-jvb.env - web-prosody-jicofo.env - web-prosody.env - prosody-jicofo-jvb.env environment: - TZ=${TZ:-Etc/UTC} - PUBLIC_URL - XMPP_AUTH_DOMAIN=${XMPP_AUTH_DOMAIN:-auth.meet.jitsi} jicofo: image: ${JCF_IMG:-jitsi/jicofo}:${JCF_TAG:-latest} container_name: ${JCF_CONTAINER_NAME:-jitsi-jicofo} restart: ${JCF_RESTART:-unless-stopped} networks: meet.jitsi: volumes: - ${LOCAL_STACK_DIR:-./vol}/jicofo:/config:Z env_file: - jicofo.env - prosody-jicofo.env - web-prosody-jicofo.env - prosody-jicofo-jvb.env - jicofo-jvb.env environment: - TZ=${TZ:-Etc/UTC} - XMPP_AUTH_DOMAIN=${XMPP_AUTH_DOMAIN:-auth.meet.jitsi} - XMPP_SERVER=${XMPP_SERVER:-xmpp.meet.jitsi} depends_on: - prosody jvb: image: ${JVB_IMG:-jitsi/jvb}:${JVB_TAG:-latest} container_name: ${JVB_CONTAINER_NAME:-jitsi-jvb} restart: ${JVB_RESTART:-unless-stopped} ports: - ${JVB_PORT:-10000}:${JVB_PORT:-10000}/udp networks: meet.jitsi: volumes: - ${LOCAL_STACK_DIR:-./vol}/jvb:/config:Z env_file: - jvb.env - prosody-jvb.env - prosody-jicofo-jvb.env - jicofo-jvb.env environment: - TZ=${TZ:-Etc/UTC} - PUBLIC_URL - XMPP_AUTH_DOMAIN=${XMPP_AUTH_DOMAIN:-auth.meet.jitsi} - XMPP_SERVER=${XMPP_SERVER:-xmpp.meet.jitsi} - JVB_PORT=${JVB_PORT:-10000} depends_on: - prosody # Custom network so all services can communicate using a FQDN networks: meet.jitsi: webservices: external: name: webservices