Docker containers running sample nodejs app among others tools for learning purposes.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

74 lines
1.4 KiB

version: '3'
services:
nginx:
container_name: nginx
deploy:
replicas: 3
restart: always
build: ./nginx
image: custom/nginx
volumes:
- nginx_data1:/usr/share/nginx/html
- nginx_data2:/etc/nginx
ports:
- 3002:80
networks:
- network_1
app:
container_name: app
deploy:
replicas: 6
build: ./node
image: custom/node
volumes:
- app_data:/www
ports:
- 3001:3001
networks:
- network_1
mongo:
container_name: mongo
build: ./mongo
image: custom/mongo
volumes:
- mongo_data:/data/db
environment:
MONGO_INITDB_ROOT_USERNAME: root
MONGO_INITDB_ROOT_PASSWORD: ruth
networks:
- network_1
ports:
- 27017:27017
prometheus:
container_name: prometheus
image: prom/prometheus:latest
volumes:
- ./prometheus.yml:/etc/prometheus/prometheus.yml
- prom_data:/prometheus
networks:
- network_1
ports:
- 9090:9090
grafana:
container_name: grafana
image: grafana/grafana
volumes:
- grafana_data:/var/lib/grafana
networks:
- network_1
ports:
- 3000:3000
volumes:
app_data:
mongo_data:
grafana_data:
prom_data:
nginx_data1:
nginx_data2:
networks:
network_1:
ipam:
driver: default
config:
- subnet: 192.168.5.0/24