Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- version: "3"
- services:
- web:
- image: project
- restart: always
- command: gunicorn conf.wsgi:application -c /opt/project/tools/docker/provision/gunicorn/production.py
- expose:
- - "8000"
- volumes:
- - .:/opt/project
- - ./media-volume:/var/www/media
- extra_hosts:
- - "database:${HOST_IP}" #To connect database server inside the container
- worker:
- image: project
- restart: always
- command: supervisord -c /opt/project/tools/docker/provision/supervisor/supervisord.conf
- volumes:
- - .:/opt/project
- - ./supervisor-volume/log:/var/log/supervisor/
- - ./media-volume:/var/www/media
- expose:
- - "9001"
- extra_hosts:
- - "database:${HOST_IP}" #To connect database server inside the container
- environment:
- SUPERVISOR_USER: ############
- SUPERVISOR_PASSWORD: ##########
- DJANGO_CONFIGURATION: conf.settings.prod
- depends_on:
- - web
- redis:
- restart: always
- image: redis:alpine
- expose:
- - "6379"
- volumes:
- - ./redis-volume/data:/data
- nginx:
- image: "nginx"
- restart: always
- environment:
- WEB_PORT: 80
- WEB_VIRTUAL_HOST: example.com
- PORTAINER_PORT: 80
- PORTAINER_VIRTUAL_HOST: portainer.example.com
- ADMINER_PORT: 80
- ADMINER_VIRTUAL_HOST: adminer.example.com
- SUPERVISOR_PORT: 80
- SUPERVISOR_VIRTUAL_HOST: supervisor.example.com
- PROXY_L_PORT: 80
- PROXY_L_VIRTUAL_HOST: proxy.example.com
- CERTIFICATE_PATH: /etc/letsencrypt/live/example.com/fullchain.pem
- CERTIFICATE_KEY_PATH: /etc/letsencrypt/live/example.com/privkey.pem
- command: /bin/bash -c "envsubst '$$WEB_PORT $$WEB_VIRTUAL_HOST $$PORTAINER_PORT $$PORTAINER_VIRTUAL_HOST $$ADMINER_PORT $$ADMINER_VIRTUAL_HOST $$SUPERVISOR_PORT $$SUPERVISOR_VIRTUAL_HOST $$PROXY_L_PORT $$PROXY_L_VIRTUAL_HOST $$CERTIFICATE_PATH $$CERTIFICATE_KEY_PATH' < /etc/nginx/conf.d/default.template > /etc/nginx/conf.d/default.conf && exec nginx -g 'daemon off;'"
- volumes:
- - ./tools/docker/provision/nginx:/etc/nginx/conf.d
- - ./static:/static
- - ./media-volume:/media:ro
- - ./letsencrypt-etc-volume:/etc/letsencrypt
- ports:
- - "80:80"
- - "443:443"
- portainer:
- image: portainer/portainer
- restart: always
- command: -H unix:///var/run/docker.sock --admin-password "#############"
- expose:
- - "9000"
- volumes:
- - /var/run/docker.sock:/var/run/docker.sock
- - ./portainer-volume:/data
- adminer:
- image: edyan/adminer
- restart: always
- environment:
- - ADMINER_VERSION=4.6.3
- expose:
- - "80"
- extra_hosts:
- - "database:${HOST_IP}" #To connect database server inside the container
- datadog:
- image: datadog/agent:latest
- restart: always
- environment:
- DD_API_KEY: #################################
- DD_LOGS_ENABLED: "true"
- DD_LOGS_CONFIG_CONTAINER_COLLECT_ALL : "true"
- DD_AC_EXCLUDE: "name:datadog-agent"
- volumes:
- - /var/run/docker.sock:/var/run/docker.sock
- - /proc/:/host/proc/:ro
- - /sys/fs/cgroup/:/host/sys/fs/cgroup:ro
- - ./datadog-agent-volume/run:/opt/datadog-agent/run:rw
- proxy:
- image: luminati/luminati-proxy:latest
- restart: always
- expose:
- - "22999"
- - "22555"
- - "24000"
- environment:
- LPM_CUSTOMER: #####
- LPM_ZONE: static
- LPM_PASSWORD: #####
- LPM_PROXY_PORT: 22225
- LPM_WWW_WHITELIST_IPS: "#.#.#.#/#"
- LPM_SSL: "true"
- LPM_CONFIG: "/etc/luminati/luminati.json"
- LPM_DATABASE: "/root/luminati-logs.sqlite3"
- command: ["luminati"]
- volumes:
- - ./tools/docker/provision/luminati:/etc/luminati/
- - ./luminati-volume:/root/
Add Comment
Please, Sign In to add comment