version: "3.8" services: back: build: context: ./back dockerfile: Dockerfile.dev ports: - "5000:5000" restart: on-failure environment: - KYOO_DATADIR=/var/lib/kyoo - DATABASE__ENABLED=postgres - DATABASE__CONFIGURATIONS__POSTGRES__SERVER=postgres - DATABASE__CONFIGURATIONS__POSTGRES__USER=${POSTGRES_USER} - DATABASE__CONFIGURATIONS__POSTGRES__PASSWORD=${POSTGRES_PASSWORD} - TVDB__APIKEY=${TVDB__APIKEY} - THEMOVIEDB__APIKEY=${THEMOVIEDB__APIKEY} - LIBRARY_ROOT=/video depends_on: - postgres volumes: - ./back:/app - /app/out/ - kyoo:/var/lib/kyoo - ./video:/video front: build: context: ./front dockerfile: Dockerfile.dev volumes: - ./front:/app - /app/.yarn - /app/node_modules - /app/apps/web/.next/ - /app/apps/mobile/.expo/ ports: - "3000:3000" - "19000:19000" restart: on-failure environment: - KYOO_URL=${KYOO_URL:-http://back:5000} - PUBLIC_BACK_URL=${PUBLIC_BACK_URL} ingress: image: nginx restart: on-failure environment: - PORT=8901 - FRONT_URL=http://front:3000 - BACK_URL=${KYOO_URL:-http://back:5000} volumes: - ./nginx.conf.template:/etc/nginx/templates/kyoo.conf.template:ro depends_on: - back - front ports: - "8901:8901" postgres: image: "postgres" restart: on-failure environment: - POSTGRES_USER=${POSTGRES_USER} - POSTGRES_PASSWORD=${POSTGRES_PASSWORD} - POSTGRES_DB=${POSTGRES_DB} volumes: - db:/var/lib/postgresql/data volumes: kyoo: db: