version: '3.3' services: elasticsearch: container_name: cvat_elasticsearch image: cvat_elasticsearch networks: - cvat build: context: ./components/analytics/elasticsearch args: ELK_VERSION: 6.8.23 volumes: - cvat_events:/usr/share/elasticsearch/data restart: always kibana: container_name: cvat_kibana image: cvat_kibana networks: - cvat build: context: ./components/analytics/kibana args: ELK_VERSION: 6.8.23 depends_on: ['elasticsearch'] environment: - ELASTICSEARCH_HOSTS=http://elasticsearch:9200 restart: always cvat_kibana_setup: container_name: cvat_kibana_setup image: cvat/server:${CVAT_VERSION:-dev} volumes: ['./components/analytics/kibana:/home/django/kibana:ro'] depends_on: ['cvat_server'] working_dir: '/home/django' networks: - cvat entrypoint: [ 'bash', 'wait-for-it.sh', 'elasticsearch:9200', '-t', '0', '--', '/bin/bash', 'wait-for-it.sh', 'kibana:5601', '-t', '0', '--', 'python3', 'kibana/setup.py', 'kibana/export.json', ] environment: no_proxy: elasticsearch,kibana,${no_proxy:-} logstash: container_name: cvat_logstash image: cvat_logstash networks: - cvat build: context: ./components/analytics/logstash args: ELK_VERSION: 6.8.23 http_proxy: ${http_proxy:-} https_proxy: ${https_proxy:-} environment: LOGSTASH_OUTPUT_HOST: elasticsearch:9200 LOGSTASH_OUTPUT_USER: LOGSTASH_OUTPUT_PASS: depends_on: ['elasticsearch'] restart: always cvat_server: environment: DJANGO_LOG_SERVER_HOST: logstash DJANGO_LOG_SERVER_PORT: 8080 CVAT_ANALYTICS: 1 traefik: environment: CVAT_HOST: ${CVAT_HOST:-localhost} DJANGO_LOG_VIEWER_HOST: kibana DJANGO_LOG_VIEWER_PORT: 5601 volumes: - ./components/analytics/kibana_conf.yml:/etc/traefik/rules/kibana_conf.yml:ro volumes: cvat_events: