You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

89 lines
2.1 KiB

  1. version: "3.7"
  2. services:
  3. backend:
  4. build:
  5. context: .
  6. dockerfile: backend/Dockerfile.dev
  7. volumes:
  8. - .:/src
  9. - venv:/root/.local/share
  10. environment:
  11. ADMIN_USERNAME: "${ADMIN_USERNAME}"
  12. ADMIN_PASSWORD: "${ADMIN_PASSWORD}"
  13. ADMIN_EMAIL: ${ADMIN_EMAIL}
  14. CELERY_BROKER_URL: "amqp://${RABBITMQ_DEFAULT_USER}:${RABBITMQ_DEFAULT_PASS}@rabbitmq"
  15. DATABASE_URL: "postgres://${POSTGRES_USER}:${POSTGRES_PASSWORD}@postgres:5432/${POSTGRES_DB}?sslmode=disable"
  16. ALLOW_SIGNUP: "False"
  17. DEBUG: "True"
  18. ports:
  19. - 8000:8000
  20. depends_on:
  21. - postgres
  22. networks:
  23. - network-backend
  24. - network-frontend
  25. celery:
  26. build:
  27. context: .
  28. dockerfile: backend/Dockerfile.dev
  29. volumes:
  30. - .:/src
  31. - venv:/root/.local/share
  32. entrypoint: ["/src/tools/dev-celery.sh"]
  33. environment:
  34. PYTHONUNBUFFERED: "1"
  35. CELERY_BROKER_URL: "amqp://${RABBITMQ_DEFAULT_USER}:${RABBITMQ_DEFAULT_PASS}@rabbitmq"
  36. DATABASE_URL: "postgres://${POSTGRES_USER}:${POSTGRES_PASSWORD}@postgres:5432/${POSTGRES_DB}?sslmode=disable"
  37. depends_on:
  38. - postgres
  39. - rabbitmq
  40. networks:
  41. - network-backend
  42. rabbitmq:
  43. image: rabbitmq:3.8-alpine
  44. environment:
  45. RABBITMQ_DEFAULT_USER: "${RABBITMQ_DEFAULT_USER}"
  46. RABBITMQ_DEFAULT_PASS: "${RABBITMQ_DEFAULT_PASS}"
  47. ports:
  48. - 5672:5672
  49. networks:
  50. - network-backend
  51. frontend:
  52. image: node:16.5-alpine3.14
  53. command: ["/src/tools/dev-nuxt.sh"]
  54. working_dir: /src/frontend
  55. environment:
  56. API_URL: "http://backend:8000"
  57. volumes:
  58. - .:/src
  59. - node_modules:/src/frontend/node_modules
  60. ports:
  61. - 3000:3000
  62. depends_on:
  63. - backend
  64. networks:
  65. - network-frontend
  66. postgres:
  67. image: postgres:13.3-alpine
  68. volumes:
  69. - postgres_data:/var/lib/postgresql/data/
  70. environment:
  71. POSTGRES_USER: "${POSTGRES_USER}"
  72. POSTGRES_PASSWORD: "${POSTGRES_PASSWORD}"
  73. POSTGRES_DB: "${POSTGRES_DB}"
  74. networks:
  75. - network-backend
  76. volumes:
  77. postgres_data:
  78. node_modules:
  79. venv:
  80. networks:
  81. network-backend:
  82. network-frontend: