version: '2.2' services: es01: container_name: docgpt-es-01 image: docker.elastic.co/elasticsearch/elasticsearch:${STACK_VERSION} volumes: - esdata01:/usr/share/elasticsearch/data ports: - ${ES_PORT}:9200 environment: - node.name=es01 - cluster.name=${CLUSTER_NAME} - cluster.initial_master_nodes=es01 - ELASTIC_PASSWORD=${ELASTIC_PASSWORD} - bootstrap.memory_lock=false - xpack.security.enabled=false mem_limit: ${MEM_LIMIT} ulimits: memlock: soft: -1 hard: -1 networks: - docgpt restart: always kibana: depends_on: - es01 image: docker.elastic.co/kibana/kibana:${STACK_VERSION} container_name: docgpt-kibana volumes: - kibanadata:/usr/share/kibana/data ports: - ${KIBANA_PORT}:5601 environment: - SERVERNAME=kibana - ELASTICSEARCH_HOSTS=http://es01:9200 mem_limit: ${MEM_LIMIT} networks: - docgpt postgres: image: postgres container_name: docgpt-postgres environment: - POSTGRES_USER=${POSTGRES_USER} - POSTGRES_PASSWORD=${POSTGRES_PASSWORD} - POSTGRES_DB=${POSTGRES_DB} ports: - 5455:5432 volumes: - pg_data:/var/lib/postgresql/data networks: - docgpt restart: always minio: image: quay.io/minio/minio:RELEASE.2023-12-20T01-00-02Z container_name: docgpt-minio command: server --console-address ":9001" /data ports: - 9000:9000 - 9001:9001 environment: - MINIO_ROOT_USER=${MINIO_USER} - MINIO_ROOT_PASSWORD=${MINIO_PASSWORD} volumes: - minio_data:/data networks: - docgpt restart: always volumes: esdata01: driver: local kibanadata: driver: local pg_data: driver: local minio_data: driver: local networks: docgpt: driver: bridge