version: "3" services: grobid: image: grobid/grobid:0.7.3 ports: - "8070:8070" environment: - _JAVA_OPTIONS=-Xms512m -Xmx2g restart: always deploy: resources: reservations: devices: - driver: nvidia count: all capabilities: [gpu] backend: container_name: backend restart: always build: ./backend ports: - "8080:8080" volumes: - ./backend:/home/user environment: FLASK_DEBUG: 1 MODEL_SERVICE_HOST: model_service ELASTIC_HOST: es01 command: "/bin/bash -c 'sleep 10 && gunicorn -w 19 -b 0.0.0.0:8080 --timeout 10000 app:server'" networks: - elastic - backend-chatbot depends_on: - es01 - model_service - weaviate # - grobid model_service: container_name: model_service restart: always build: ./model_service ports: - "5000:5000" environment: FLASK_DEBUG: 1 MODEL_ARG: " " volumes: - ./model_service/models:/home/user/models command: "/bin/bash -c 'sleep 10 && gunicorn -w 29 -b 0.0.0.0:5000 --timeout 10000 app:server'" networks: - backend-chatbot es01: image: docker.elastic.co/elasticsearch/elasticsearch:7.9.2 container_name: es01 volumes: - esdata01:/usr/share/elasticsearch/data environment: - discovery.type=single-node - node.name=es01 - cluster.name=es-docker-cluster ports: - 9210:9200 networks: - elastic rasa: image: rasa/rasa:3.6.9-full container_name: rasa entrypoint: ["/bin/sh", "-c"] ports: - 5005:5005 volumes: - ./chatbot/:/app command: - rasa run --endpoints endpoints.yml --enable-api --cors "*" --debug networks: - backend-chatbot app: restart: always container_name: app build: ./chatbot image: hsmaba/chatbot environment: FLASK_HOST: backend expose: - 5055 networks: - backend-chatbot weaviate: image: semitechnologies/weaviate:1.21.6 ports: - 3434:8080 restart: on-failure:0 volumes: - weaviate_data:/var/lib/weaviate environment: QUERY_DEFAULTS_LIMIT: 25 AUTHENTICATION_ANONYMOUS_ACCESS_ENABLED: "true" PERSISTENCE_DATA_PATH: "/var/lib/weaviate" DEFAULT_VECTORIZER_MODULE: "none" CLUSTER_HOSTNAME: "node1" volumes: esdata01: driver: local weaviate_data: driver: local networks: elastic: driver: bridge backend-chatbot: driver: bridge app-network: driver: bridge