# {{ ansible_managed }} services: # Frontend web: image: jitsi/web:{{ docker_jitsimeet_version }} restart: always ports: - 80:80 - 443:443 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: {% if docker_jitsimeet_letsencrypt_enabled %} - ENABLE_LETSENCRYPT=1 - LETSENCRYPT_DOMAIN={{ docker_jitsimeet_fqdn }} - LETSENCRYPT_EMAIL={{ docker_jitsimeet_letsencrypt_email }} {% endif %} - PUBLIC_URL=https://{{ docker_jitsimeet_fqdn }} - ENABLE_HTTP_REDIRECT=1 - JICOFO_AUTH_PASSWORD={{ docker_jitsimeet_jicofo_auth_password }} {% if docker_jitsimeet_etherpad_enabled %} - ETHERPAD_PUBLIC_URL={{ docker_jitsimeet_etherpad_public_url }} {% endif %} networks: jitsimeet: depends_on: - jvb # 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 }} {% if docker_jitsimeet_turnserver_enabled %} - TURN_CREDENTIALS={{ docker_jitsimeet_turnserver_credentials }} - TURN_HOST={{ docker_jitsimeet_turnserver_fqdn }} - TURN_PORT={{ docker_jitsimeet_turnserver_port }} - TURN_TRANSPORT={{ docker_jitsimeet_turnserver_transport }} {% endif %} 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' 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 }} {% if docker_jitsimeet_exporter_enabled %} # metriques - COLIBRI_REST_ENABLED=true - JVB_ENABLE_APIS=rest,colibri - JVB_TCP_API_PORT=8080 - JVB_TCP_MAPPED_API_PORT=8080 {% endif %} depends_on: - prosody networks: jitsimeet: {% if docker_jitsimeet_exporter_enabled %} exporter: image: systemli/prometheus-jitsi-meet-exporter:latest restart: always command: -videobridge-url http://jvb:8080/colibri/stats ports: - {{ docker_jitsimeet_exporter_port }}:9888 depends_on: - jvb networks: jitsimeet: {% endif %} networks: jitsimeet: