version: "3" services: web: build: ./frontend ports: - "6000:6000" restart: always env_file: - ./frontend/.env depends_on: - back nginx: image: jonasal/nginx-certbot:latest restart: unless-stopped env_file: - ./nginx-certbot.env ports: - 80:80 - 443:443 volumes: - nginx_secrets:/etc/letsencrypt - ./user_conf.d:/etc/nginx/user_conf.d depends_on: - web back: build: ./backend ports: - "5000:5000" restart: always links: - mongodb:db env_file: - ./backend/.env mongodb: image: mongo:4.0.8 restart: unless-stopped command: mongod --auth env_file: - ./backend/mongodb.env ports: - 27017:27017 volumes: - ./init-db.js:/docker-entrypoint-initdb.d/init-db.js:ro cadvisor: container_name: cadvisor image: gcr.io/cadvisor/cadvisor:latest restart: unless-stopped ports: - 8080:8080 volumes: - /:/rootfs:ro - /var/run:/var/run:rw - /sys:/sys:ro - /var/lib/docker/:/var/lib/docker:ro prometheus: container_name: prometheus image: prom/prometheus:latest restart: unless-stopped ports: - 9090:9090 command: - --config.file=/etc/prometheus/prometheus.yml volumes: - ./prometheus.yml:/etc/prometheus/prometheus.yml:ro depends_on: - cadvisor grafana: container_name: grafana image: grafana/grafana:latest restart: unless-stopped ports: - 3000:3000 volumes: - grafana_storage:/var/lib/grafana depends_on: - prometheus volumes: nginx_secrets: grafana_storage: