Files
nginx-analize/results/docker-compose.yml
Redsandyg fcc9139361 init
2026-06-15 06:31:35 +03:00

110 lines
2.4 KiB
YAML

services:
nginx:
image: nginx:1.26-alpine
container_name: nginx-pmi
ports:
- "8080:80"
- "8443:443"
volumes:
- ./nginx/nginx.conf:/etc/nginx/nginx.conf:ro
- ./nginx/conf.d:/etc/nginx/conf.d:ro
- ./nginx/htpasswd:/etc/nginx/htpasswd:ro
- ./www:/usr/share/nginx/html:ro
- ./ssl:/etc/nginx/ssl:ro
- ./scripts:/scripts:ro
- ./fim-watch:/fim-watch
- ./reports:/reports
- nginx-cache:/var/cache/nginx
- nginx-logs:/var/log/nginx
depends_on:
- backend
- slow-backend
- auth-mock
- syslog-ng
networks:
allowed-net:
ipv4_address: 172.28.0.2
denied-net:
ipv4_address: 172.29.0.2
internal:
healthcheck:
test: ["CMD", "wget", "-q", "-O", "/dev/null", "http://127.0.0.1/public/index.html"]
interval: 5s
timeout: 3s
retries: 12
backend:
image: nginx:1.26-alpine
container_name: nginx-pmi-backend
volumes:
- ./mock/backend.conf:/etc/nginx/conf.d/default.conf:ro
networks:
- internal
slow-backend:
image: python:3.12-alpine
container_name: nginx-pmi-slow
command: ["python", "/app/slow-server.py"]
volumes:
- ./mock/slow-server.py:/app/slow-server.py:ro
networks:
- internal
auth-mock:
image: python:3.12-alpine
container_name: nginx-pmi-auth
command: ["python", "/app/auth-server.py"]
volumes:
- ./mock/auth-server.py:/app/auth-server.py:ro
- auth-mode:/auth-mode
networks:
- internal
syslog-ng:
image: balabit/syslog-ng:4.7.1
container_name: nginx-pmi-syslog
volumes:
- ./mock/syslog-ng.conf:/etc/syslog-ng/syslog-ng.conf:ro
- ./reports:/reports
networks:
- internal
test-runner:
build:
context: .
dockerfile: Dockerfile.test-runner
container_name: nginx-pmi-test-runner
volumes:
- ./scripts:/scripts:ro
- ./ssl:/ssl:ro
- ./reports:/reports
- auth-mode:/auth-mode
depends_on:
nginx:
condition: service_healthy
networks:
allowed-net:
ipv4_address: 172.28.0.20
denied-net:
ipv4_address: 172.29.0.20
internal:
networks:
allowed-net:
driver: bridge
ipam:
config:
- subnet: 172.28.0.0/16
denied-net:
driver: bridge
ipam:
config:
- subnet: 172.29.0.0/16
internal:
driver: bridge
volumes:
nginx-cache:
nginx-logs:
auth-mode: