112 lines
2.8 KiB
YAML
112 lines
2.8 KiB
YAML
services:
|
|
frontend:
|
|
build:
|
|
context: frontend
|
|
environment:
|
|
- API_HOST=http://ec2-3-121-130-58.eu-central-1.compute.amazonaws.com/ff-api
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.http.routers.ff-frontend.rule=PathPrefix(`/ff`)"
|
|
- "traefik.http.routers.ff-frontend.entrypoints=web"
|
|
- "traefik.http.services.ff-frontend.loadbalancer.server.port=80"
|
|
- "traefik.http.middlewares.ff-frontend-stripprefix.stripprefix.prefixes=/ff"
|
|
- "traefik.http.routers.ff-frontend.middlewares=ff-frontend-stripprefix"
|
|
networks:
|
|
- proxy
|
|
- app-network
|
|
|
|
db:
|
|
image: postgres:17-alpine
|
|
env_file:
|
|
- .env
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "pg_isready -U admin"]
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 5
|
|
volumes:
|
|
- db_data:/var/lib/postgresql/data
|
|
networks:
|
|
- app-network
|
|
|
|
coordinator:
|
|
build:
|
|
context: backend/coordinator
|
|
dockerfile: Dockerfile
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
- OCR_SERVICE_URL=http://ocr:5000
|
|
depends_on:
|
|
db:
|
|
condition: service_healthy
|
|
healthcheck:
|
|
test: wget --spider --no-verbose http://127.0.0.1:5000/health || exit 1
|
|
interval: 20s
|
|
timeout: 10s
|
|
retries: 10
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.http.routers.ff-api.rule=PathPrefix(`/ff-api`)"
|
|
- "traefik.http.routers.ff-api.entrypoints=web"
|
|
- "traefik.http.services.ff-api.loadbalancer.server.port=5000"
|
|
- "traefik.http.middlewares.ff-api-stripprefix.stripprefix.prefixes=/ff-api"
|
|
- "traefik.http.routers.ff-api.middlewares=ff-api-stripprefix"
|
|
networks:
|
|
- proxy
|
|
- app-network
|
|
|
|
ocr:
|
|
build:
|
|
context: backend/ocr-service
|
|
dockerfile: Dockerfile
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
- EXXETA_SERVICE_URL=http://exxeta:5000/extract
|
|
- SPACY_SERVICE_URL=http://spacy:5052/extract
|
|
- COORDINATOR_URL=http://coordinator:5000
|
|
networks:
|
|
- app-network
|
|
|
|
spacy:
|
|
build:
|
|
context: backend/spacy-service
|
|
environment:
|
|
- VALIDATE_SERVICE_URL=http://validate:5000/validate
|
|
volumes:
|
|
- ./backend/spacy-service/spacy_training:/app/spacy_training
|
|
networks:
|
|
- app-network
|
|
|
|
exxeta:
|
|
build:
|
|
context: backend/exxetaGPT-service
|
|
dockerfile: ../../Dockerfile
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
- VALIDATE_SERVICE_URL=http://validate:5000/validate
|
|
- COORDINATOR_URL=http://coordinator:5000
|
|
networks:
|
|
- app-network
|
|
|
|
validate:
|
|
build:
|
|
context: backend/validate-service
|
|
dockerfile: ../../Dockerfile
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
- COORDINATOR_URL=http://coordinator:5000
|
|
networks:
|
|
- app-network
|
|
|
|
networks:
|
|
proxy:
|
|
external: true
|
|
app-network:
|
|
driver: bridge
|
|
|
|
volumes:
|
|
db_data: |