arrow_back

snippet : docker-compose full stack




version: "3"
services:
  app:
    build: .
    container_name: django-gunicorn
    depends_on:
      - mongo
      - rabbit
    ports:
      - "8000:8000"
    command: sh -c "python manage.py collectstatic --no-input && python manage.py migrate && gunicorn --workers=2 <PROJECTNAME>.wsgi:application -b 0.0.0.0:8000"
  
  wsapp:
    image: <PROJECTNAME>_app
    container_name: django-runserver
    restart: always
    ports:
      - "8002:8002"
    command:
      sh -c "python3 manage.py collectstatic --no-input && python3 manage.py migrate && python3 manage.py runserver 0.0.0.0:8002"
  nginx:
    image: nginx:1.17
    container_name: ngx
    ports:
      - "80:80"
    volumes:
      - ./nginx:/etc/nginx/conf.d
      - ./static:/etc/nginx/staticfiles
    depends_on:
      - wsapp
  mongo:
    image: mongo:latest
    container_name: mongo
    hostname: mongo
    environment:
      - MONGO_DATA_DIR=/data/db
      - MONGO_LOG_DIR=/dev/null
    volumes:
      - ./data/db:/data/db
    ports:
        - 27017:27017
    command: mongod  --logpath=/dev/null # --quiets
  rabbit:
    image: 'rabbitmq:latest'
    container_name: rabbit
    hostname: rabbit
    ports:
      - "4369:4369"
      - "5671:5671"
      - "5672:5672"
      - "25672:25672"
      - "15671:15671"
      - "15672:15672"



Published @ Feb 2020