Advertisement
Guest User

Setup for Chagrade

a guest
Dec 14th, 2018
170
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.04 KB | None | 0 0
  1. ################################## docker-compose.yml ###########################################
  2. version: '2'
  3. services:
  4. # --------------------------------------------------------------------------
  5. # Django/Gunicorn
  6. # --------------------------------------------------------------------------
  7. django:
  8. build: .
  9. hostname: django
  10. command: /usr/local/bin/gunicorn chagrade.wsgi:application -w 2 -b :8000 --reload
  11. env_file: .env
  12. volumes:
  13. - .:/app
  14. ports:
  15. - "80:8000"
  16. depends_on:
  17. - postgres
  18. links:
  19. - postgres
  20. logging:
  21. options:
  22. max-size: "200k"
  23. container_name: django
  24. stdin_open: true
  25. tty: true
  26.  
  27. # --------------------------------------------------------------------------
  28. # Database
  29. # --------------------------------------------------------------------------
  30. postgres:
  31. image: postgres:9.5
  32. environment:
  33. - PGDATA=/app/var/lib/postgresql/data/pgdata
  34. - POSTGRES_DB=${DB_NAME}
  35. - POSTGRES_USER=${DB_USER}
  36. - POSTGRES_PASSWORD=${DB_PASSWORD}
  37. ports:
  38. - 5432:5432
  39. volumes:
  40. - ./var/lib/postgresql/data:/app/var/lib/postgresql/data
  41. env_file: .env
  42. logging:
  43. options:
  44. max-size: "200k"
  45. container_name: postgres
  46. #-----------------------------------------------
  47. # Rabbitmq Service
  48. #-----------------------------------------------
  49. rabbitmq:
  50. image: rabbitmq:3-management
  51. container_name: rabbit
  52. hostname: rabbit
  53. env_file: .env
  54. ports:
  55. - 15672:15672
  56. - 5672:5672
  57. volumes:
  58. - ./var/rabbitmq:/var/lib/rabbitmq/
  59. #-----------------------------------------------
  60. # Celery Service
  61. #-----------------------------------------------
  62. celery:
  63. container_name: celery
  64. hostname: celery
  65. command: bash -c "celery -A chagrade worker --loglevel=debug"
  66. working_dir: /app/
  67. build:
  68. context: .
  69. dockerfile: Dockerfile.celery
  70. depends_on:
  71. - rabbitmq
  72. - postgres
  73. environment:
  74. - DJANGO_SETTINGS_MODULE=chagrade.settings.base
  75. env_file: .env
  76. volumes:
  77. - .:/app
  78. #-----------------------------------------------
  79. # Flower Service
  80. #-----------------------------------------------
  81. flower:
  82. container_name: flower
  83. hostname: flower
  84. env_file: .env
  85. build:
  86. context: .
  87. dockerfile: Dockerfile.flower
  88. ports:
  89. - 15555:5555
  90. depends_on:
  91. - celery
  92. - rabbitmq
  93. #####################################################################################################################
  94.  
  95.  
  96. ######################################### Dockerfile ##############################################################
  97.  
  98. FROM python:3.7
  99. ENV PYTHONUNBUFFERED 1
  100.  
  101. # Install the gunicorn server to serve django
  102. #RUN pip install gunicorn==19.6.0
  103.  
  104. # Install the dependencies (rarely change)
  105. ADD requirements.txt .
  106. RUN pip install -r requirements.txt
  107.  
  108. ## Install the app code (change often)
  109. #ADD . /app
  110.  
  111. WORKDIR /app
  112. CMD ["/usr/local/bin/gunicorn", "chagrade.wsgi:application", "-w 2", "--timeout=300", "-b :8000"]
  113.  
  114. #####################################################################################################################
  115.  
  116.  
  117. ########################################### .env ###############################################################
  118.  
  119. # ----------------------------------------------------------------------------
  120. # General
  121. # ----------------------------------------------------------------------------
  122.  
  123. DOCKER_DEBUG=true
  124.  
  125. # ----------------------------------------------------------------------------
  126. # Database
  127. # ----------------------------------------------------------------------------
  128.  
  129. DB_HOST=postgres
  130. DB_NAME=postgres
  131. DB_USER=postgres
  132. DB_PASSWORD=postgres
  133. DB_PORT=5432
  134.  
  135. # ----------------------------------------------------------------------------
  136. # Celery/Rabbit
  137. # ----------------------------------------------------------------------------
  138.  
  139. RABBITMQ_DEFAULT_USER=guest
  140. RABBITMQ_DEFAULT_PASS=guest
  141. BROKER_URL=
  142.  
  143. # ----------------------------------------------------------------------------
  144. # Chahub Auth
  145. # ----------------------------------------------------------------------------
  146. SOCIAL_AUTH_CHAHUB_BASE_URL=
  147. SOCIAL_AUTH_CODALAB_KEY=
  148. SOCIAL_AUTH_CODALAB_SECRET=
  149.  
  150.  
  151. #####################################################################################################################
  152.  
  153.  
  154. ########################################### Databases from settings/base.py ########################################
  155.  
  156. DATABASES = {
  157. 'default': {
  158. 'ENGINE': 'django.db.backends.postgresql_psycopg2',
  159. 'NAME': os.environ.get('DB_NAME', 'chagrade_website'),
  160. 'USER': os.environ.get('DB_USER', 'postgres'),
  161. 'PASSWORD': os.environ.get('DB_PASSWORD', ''),
  162. 'HOST': os.environ.get('DB_HOST', 'postgres'),
  163. 'PORT': os.environ.get('DB_PORT', '5432'),
  164. }
  165. }
  166. #####################################################################################################################
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement