# {{ ansible_managed }} version: '3.5' services: # Frontend web: image: jitsi/web:{{ docker_jitsimeet_version }} restart: always volumes: - {{ docker_jitsimeet_data_dir }}/{{ docker_jitsimeet_service_id }}/web:/config - {{ docker_jitsimeet_data_dir }}/{{ docker_jitsimeet_service_id }}/web/crontabs:/var/spool/cron/crontabs - {{ docker_jitsimeet_data_dir }}/{{ docker_jitsimeet_service_id }}/transcripts:/usr/share/jitsi-meet/transcripts environment: - PUBLIC_URL=https://{{ docker_jitsimeet_fqdn }} - JICOFO_AUTH_PASSWORD={{ docker_jitsimeet_jicofo_auth_password }} {% if docker_jitsimeet_etherpad_public_url is defined %} - ETHERPAD_PUBLIC_URL={{ docker_jitsimeet_etherpad_public_url }} {% endif %} labels: - "traefik.enable=true" - "traefik.docker.network=traefik" - "traefik.http.routers.{{ docker_jitsimeet_service_id }}.entrypoints=web" - "traefik.http.routers.{{ docker_jitsimeet_service_id }}.rule=Host(`{{ docker_jitsimeet_fqdn }}`)" - "traefik.http.services.{{ docker_jitsimeet_service_id }}.loadbalancer.server.port=80" networks: - jitsimeet - traefik # XMPP server prosody: image: jitsi/prosody:{{ docker_jitsimeet_version }} restart: always expose: - '5222' - '5347' - '5280' volumes: - {{ docker_jitsimeet_data_dir }}/{{ docker_jitsimeet_service_id }}/prosody/config:/config - {{ docker_jitsimeet_data_dir }}/{{ docker_jitsimeet_service_id }}/prosody/prosody-plugins-custom:/prosody-plugins-custom environment: - PUBLIC_URL=https://{{ docker_jitsimeet_fqdn }} - JICOFO_AUTH_PASSWORD={{ docker_jitsimeet_jicofo_auth_password }} - JVB_AUTH_PASSWORD={{ docker_jitsimeet_jvb_auth_password }} networks: jitsimeet: aliases: - xmpp.meet.jitsi # Focus component jicofo: image: jitsi/jicofo:{{ docker_jitsimeet_version }} restart: always volumes: - {{ docker_jitsimeet_data_dir }}/{{ docker_jitsimeet_service_id }}/jicofo:/config environment: - JICOFO_AUTH_PASSWORD={{ docker_jitsimeet_jicofo_auth_password }} depends_on: - prosody networks: - jitsimeet # Video bridge jvb: image: jitsi/jvb:{{ docker_jitsimeet_version }} restart: always ports: - '10000:10000/udp' # - '127.0.0.1:8080:8080' volumes: - {{ docker_jitsimeet_data_dir }}/{{ docker_jitsimeet_service_id }}/jvb:/config environment: - PUBLIC_URL=https://{{ docker_jitsimeet_fqdn }} - DOCKER_HOST_ADDRESS={{ docker_jitsimeet_jvb_host_address }} - JVB_AUTH_PASSWORD={{ docker_jitsimeet_jvb_auth_password }} depends_on: - prosody networks: - jitsimeet - jitsivideo networks: traefik: external: true jitsimeet: internal: true jitsivideo: