123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131 |
- version: "3"
- services:
- # Barcode Backend
- backend:
- restart: always
- build: docker-back/
- image: barcode-back
- container_name: "barcode-back"
- #command: bash -c "python manage.py runserver 0.0.0.0:8000"
- command: bash -c "gunicorn -w 4 -b 0.0.0.0:8000 barcode.wsgi:application --log-level=info --log-file=/back/gunicorn.log --access-logfile=/back/gunicorn-access.log"
- ports:
- - "8000:8000"
- volumes:
- - /opt/back:/back:rw
- depends_on:
- - mysql
- - rabbit
- - memcached
- environment:
- DEBUG: 'true'
- links:
- - rabbit:rabbit
- - memcached:memcached
- # RabbitMQ - queue
- rabbit:
- restart: always
- container_name: "barcode-rabbit"
- hostname: rabbit
- image: rabbitmq:3-management
- environment:
- - RABBITMQ_DEFAULT_USER=admin
- - RABBITMQ_DEFAULT_PASS=gW3KSoZt5K5o9V99YJUH
- - RABBITMQ_DEFAULT_VHOST=barcode
- ports:
- - "5672:5672"
- - "15672:15672" # here, we can access rabbitmq management plugin
- # Celery worker
- celery-w:
- restart: always
- image: barcode-back
- container_name: "barcode-celery-w"
- command: sh -c "python -m celery -A barcode worker -l debug"
- volumes:
- - /opt/back:/back:rw
- links:
- - rabbit:rabbit
- depends_on:
- - rabbit
- - backend
- # Celery Beat
- celery-b:
- restart: always
- image: barcode-back
- container_name: "barcode-celery-b"
- command: sh -c "python -m celery -A barcode beat --pidfile= -l debug"
- volumes:
- - /opt/back:/back:rw
- links:
- - rabbit:rabbit
- depends_on:
- - celery-w
- - rabbit
- # Celery Flower
- celery-f:
- restart: always
- image: barcode-back
- container_name: "barcode-celery-f"
- command: sh -c "python -m celery -A barcode flower --port=5555 --broker=amqp://admin:gW3KSoZt5K5o9V99YJUH@rabbit:5672/barcode"
- volumes:
- - /opt/back:/back:rw
- links:
- - rabbit:rabbit
- depends_on:
- - celery-w
- - rabbit
- ports:
- - "5555:5555"
-
- # Barcode Frontend
- frontend-dev:
- restart: always
- build: docker-front/
- image: barcode-front
- container_name: "barcode-front"
- expose:
- - "8080"
- ports:
- - "8080:8080"
- volumes:
- - /opt/front:/front:rw
- # Barcode Backend
- mysql:
- restart: always
- container_name: "barcode-mysql"
- image: mariadb:latest
- volumes:
- - /opt/mysql/backend-mysql:/var/lib/mysql
- ports:
- - "3306:3306"
- environment:
- - MYSQL_ROOT_PASSWORD=gW3KSoZt5K5o9V99YJUH
- - MYSQL_DATABASE=backend_dev
- - MYSQL_USER=backend
- - MYSQL_PASSWORD=gW3KSoZt5K5o9V99YJUH
- # phpmyadmin
- phpmyadmin:
- image: phpmyadmin/phpmyadmin
- container_name: "barcode-phpmyadmin"
- restart: always
- ports:
- - "5000:80"
- links:
- - mysql
- environment:
- PMA_HOST: mysql
- memcached:
- restart: always
- container_name: "barcode-memcached"
- image: memcached:latest
- command: "memcached -u memcache -vv -m 64 -p 11211 -l 0.0.0.0 -c 1024 -t 8"
- ports:
- - "127.0.0.1:11211:11211"
|