docker-compose.yml 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. version: "3.4"
  2. services:
  3. db:
  4. image: postgres:12
  5. restart: always
  6. ports:
  7. - "${DB_PORT}:5432"
  8. volumes:
  9. - /var/lib/postgresql/data
  10. environment:
  11. POSTGRES_USER: ${DB_USER}
  12. POSTGRES_PASSWORD: ${DB_PASS}
  13. POSTGRES_DB: ${DB_NAME}
  14. graphql-server:
  15. image: joystream/apps
  16. restart: unless-stopped
  17. build:
  18. context: ../
  19. dockerfile: apps.Dockerfile
  20. env_file:
  21. - .env
  22. environment:
  23. - DB_HOST=db
  24. ports:
  25. - "8080:${GRAPHQL_SERVER_PORT}"
  26. depends_on:
  27. - db
  28. command: ["workspace", "query-node-root", "server:start:prod"]
  29. processor:
  30. image: joystream/apps
  31. restart: unless-stopped
  32. build:
  33. context: ../
  34. dockerfile: apps.Dockerfile
  35. env_file:
  36. - .env
  37. environment:
  38. - INDEXER_ENDPOINT_URL=http://indexer-api-gateway:4000/graphql
  39. - DB_HOST=db
  40. - TYPEORM_HOST=db
  41. - DEBUG=index-builder:*
  42. - WS_PROVIDER_ENDPOINT_URI=${WS_PROVIDER_ENDPOINT_URI}
  43. depends_on:
  44. - indexer-api-gateway
  45. command: ["workspace", "query-node-root", "processor:start"]
  46. indexer:
  47. image: joystream/apps
  48. restart: unless-stopped
  49. build:
  50. context: ../
  51. dockerfile: apps.Dockerfile
  52. env_file:
  53. - .env
  54. environment:
  55. - TYPEORM_HOST=db
  56. - INDEXER_WORKERS=5
  57. - PROCESSOR_POLL_INTERVAL=1000 # refresh every second
  58. - REDIS_URI=redis://redis:6379/0
  59. - DEBUG=index-builder:*
  60. - WS_PROVIDER_ENDPOINT_URI=${WS_PROVIDER_ENDPOINT_URI}
  61. depends_on:
  62. - db
  63. command: ["workspace", "query-node-root", "indexer:start"]
  64. indexer-api-gateway:
  65. image: joystream/hydra-indexer-gateway:latest
  66. restart: unless-stopped
  67. environment:
  68. - WARTHOG_STARTER_DB_DATABASE=${DB_NAME}
  69. - WARTHOG_STARTER_DB_HOST=db
  70. - WARTHOG_STARTER_DB_PASSWORD=${DB_PASS}
  71. - WARTHOG_STARTER_DB_PORT=${DB_PORT}
  72. - WARTHOG_STARTER_DB_USERNAME=${DB_USER}
  73. - WARTHOG_STARTER_REDIS_URI=redis://redis:6379/0
  74. - PORT=4000
  75. ports:
  76. - "4000:4000"
  77. depends_on:
  78. - redis
  79. - db
  80. - indexer
  81. redis:
  82. image: redis:6.0-alpine
  83. restart: always
  84. ports:
  85. - "6379:6379"