services: api1: build: context: ./src dockerfile: CertificationAuthority/Dockerfile networks: - backend-network container_name: api01 environment: - ASPNETCORE_ENVIRONMENT=Production ports: - "5000:5000" api2: build: context: ./src dockerfile: CertificationAuthority/Dockerfile networks: - backend-network container_name: api02 environment: - ASPNETCORE_ENVIRONMENT=Production ports: - "5001:5000" ping-tester: image: busybox container_name: ping_tester command: ["sleep", "infinity"] networks: - backend-network nginx: image: nginx:latest container_name: nginx volumes: - ./config/nginx/nginx.conf:/etc/nginx/nginx.conf:ro - ./config/nginx/conf.d:/etc/nginx/conf.d:ro - ./config/nginx/cert:/etc/nginx/cert:ro - ./config/nginx/logs:/var/log/nginx networks: - backend-network depends_on: #- api1 - api2 ports: - "80:80" - "443:443" # db: # image: postgres:15 # environment: # POSTGRES_USER: user # POSTGRES_PASSWORD: password # POSTGRES_DB: minhaapi # networks: # - internal # volumes: # - ./config/iptools.sh:/usr/local/bin/iptools.sh # - db-data:/var/lib/postgresql/data # entrypoint: ["/bin/bash", "-c", "chmod +x /usr/local/bin/iptools.sh && /usr/local/bin/iptools.sh"] # kong: # image: kong:latest # depends_on: # - db # environment: # KONG_DATABASE: "off" # KONG_DECLARATIVE_CONFIG: "/usr/local/kong/declarative/kong.yml" # volumes: # - ./config/kong.yml:/usr/local/kong/declarative/kong.yml # networks: # - internal # - public # ports: # - "8000:8000" # - "8443:8443" # loki: # image: grafana/loki:latest # volumes: # - ./config/loki.yml:/etc/loki/config.yml # networks: # - monitoring # ports: # - "3100:3100" # tempo: # image: grafana/tempo:latest # volumes: # - ./config/tempo.yml:/etc/tempo.yml # networks: # - monitoring # ports: # - "3200:3200" prometheus: image: prom/prometheus:latest container_name: prometheus volumes: - ./config/prometheus.yml:/etc/prometheus/prometheus.yml networks: - backend-network command: - '--config.file=/etc/prometheus/prometheus.yml' ports: - "9090:9090" grafana: image: grafana/grafana:latest container_name: grafana volumes: - ./config/grafana/grafana-datasource.yml:/etc/grafana/provisioning/datasources/grafana-datasource.yml depends_on: - prometheus # - loki # - tempo networks: - backend-network ports: - "3000:3000" k6: image: grafana/k6:latest container_name: k6 volumes: - ./perf/load/script.js:/scripts/script.js environment: - ENDPOINT=http://host.docker.internal/guid command: ["run", "--out", "prometheus", "--http-addr", "0.0.0.0:6565", "/scripts/script.js"] depends_on: - prometheus networks: - backend-network networks: backend-network: driver: bridge volumes: db-data: