version: "3.4" services: db: image: postgres:12 restart: always ports: - "${DB_PORT}:5432" volumes: - /var/lib/postgresql/data environment: POSTGRES_USER: ${DB_USER} POSTGRES_PASSWORD: ${DB_PASS} POSTGRES_DB: ${DB_NAME} graphql-server: image: joystream/apps restart: unless-stopped build: context: ../ dockerfile: apps.Dockerfile env_file: - .env environment: - DB_HOST=db ports: - "8080:${GRAPHQL_SERVER_PORT}" depends_on: - db command: ["workspace", "query-node-root", "server:start:prod"] processor: image: joystream/apps restart: unless-stopped build: context: ../ dockerfile: apps.Dockerfile env_file: - .env environment: - INDEXER_ENDPOINT_URL=http://indexer-api-gateway:4000/graphql - DB_HOST=db - TYPEORM_HOST=db - DEBUG=index-builder:* - WS_PROVIDER_ENDPOINT_URI=ws://joystream-node:9944/ depends_on: - indexer-api-gateway command: ["workspace", "query-node-root", "processor:start"] indexer: image: joystream/apps restart: unless-stopped build: context: ../ dockerfile: apps.Dockerfile env_file: - .env environment: - TYPEORM_HOST=db - INDEXER_WORKERS=5 - PROCESSOR_POLL_INTERVAL=1000 # refresh every second - REDIS_URI=redis://redis:6379/0 - DEBUG=index-builder:* - WS_PROVIDER_ENDPOINT_URI=ws://joystream-node:9944/ depends_on: - db command: ["workspace", "query-node-root", "indexer:start"] indexer-api-gateway: image: joystream/hydra-indexer-gateway:latest restart: unless-stopped environment: - WARTHOG_STARTER_DB_DATABASE=${DB_NAME} - WARTHOG_STARTER_DB_HOST=db - WARTHOG_STARTER_DB_PASSWORD=${DB_PASS} - WARTHOG_STARTER_DB_PORT=${DB_PORT} - WARTHOG_STARTER_DB_USERNAME=${DB_USER} - WARTHOG_STARTER_REDIS_URI=redis://redis:6379/0 - PORT=4000 ports: - "4000:4000" depends_on: - redis - db - indexer redis: image: redis:6.0-alpine restart: always ports: - "6379:6379"