services:
  kibana:
    image: kibana:${STACK_VERSION}
    container_name: ragflow-kibana
    environment:
      ELASTICSEARCH_USERNAME: ${KIBANA_USER} 
      ELASTICSEARCH_PASSWORD: ${KIBANA_PASSWORD} 
      ELASTICSEARCH_HOSTS: "http://es01:9200"
    ports:
      - ${KIBANA_PORT}:5601
    depends_on:
      es01:
        condition: service_healthy
      kibana-user-init:
        condition: service_completed_successfully 

    networks:
      - ragflow
  kibana-user-init:
    image: appropriate/curl
    depends_on:
      es01:
        condition: service_healthy
    volumes:
      - ./init-kibana.sh:/app/init-kibana.sh
    environment:
      - ELASTIC_PASSWORD=${ELASTIC_PASSWORD}
      - KIBANA_USER=${KIBANA_USER}
      - KIBANA_PASSWORD=${KIBANA_PASSWORD}
    command: /bin/sh -c "sh /app/init-kibana.sh"
    networks:
      - ragflow
    restart: 'no'
