@underpostnet/underpost
Version:
68 lines (64 loc) • 1.58 kB
YAML
# https://docs.docker.com/compose/compose-file/compose-file-v3
# https://docs.docker.com/engine/reference/commandline/compose/
version: '3'
services:
prometheus:
image: prom/prometheus
ports:
- 9090:9090
volumes:
- ./prometheus_data:/prometheus
- ./prometheus.yml:/etc/prometheus/prometheus.yml
command:
- '--config.file=/etc/prometheus/prometheus.yml'
networks:
- load-balancer
grafana:
image: grafana/grafana
ports:
- 3000:3000
volumes:
- ./grafana_data:/var/lib/grafana
# - ./grafana.ini:/etc/grafana/grafana.ini
networks:
- load-balancer
depends_on:
- prometheus
underpost-engine:
build:
dockerfile: ./Dockerfile
context: . # workdir path
# image: underpost-engine
# container_name: <name> ignore for replicas
ports:
- '22'
- '80' # host port allocated dynamically, host ports are unique independent of replicas
- '443'
- '3306'
- '27017'
- '4001-4002:3001'
- '3002-3020'
volumes:
- ./logs:/code/logs
deploy:
mode: replicated
replicas: 2
restart_policy:
condition: on-failure
delay: 5s
max_attempts: 3
window: 120s
resources:
limits:
cpus: '2'
memory: 400M
reservations:
cpus: '0.25'
memory: 20M
labels: # labels in Compose file instead of Dockerfile
engine.version: '2.8.838'
networks:
- load-balancer
networks:
load-balancer:
driver: bridge