browser-sec-lab/docker-compose.yml
2026-07-03 22:18:33 +03:30

71 lines
1.7 KiB
YAML

services:
# ----------------------------------------
# MariaDB Database
# ----------------------------------------
mariadb:
image: mariadb:10.11
container_name: sec_lab_db
environment:
MYSQL_ROOT_PASSWORD: root_password
MYSQL_DATABASE: sec_lab
MYSQL_USER: lab_user
MYSQL_PASSWORD: lab_password
volumes:
- db_data:/var/lib/mysql
networks:
- lab_net
restart: always
# ----------------------------------------
# وب‌سرور اپلیکیشن اصلی (Victim)
# ----------------------------------------
victim-nginx:
image: nginx:stable-alpine
container_name: sec_lab_victim_nginx
ports:
- "8721:80"
volumes:
- ./:/var/www/html:ro
- ./docker/nginx/default.conf:/etc/nginx/conf.d/default.conf:ro
depends_on:
- php
networks:
- lab_net
restart: always
# ----------------------------------------
# هسته پردازشی PHP (مشترک بین دو سایت)
# ----------------------------------------
php:
image: browser-sec-lab-php:latest
build:
context: .
dockerfile: ./docker/php/Dockerfile
restart: always
networks:
- lab_net
# ----------------------------------------
# وب‌سرور اپلیکیشن مهاجم (Hacker)
# ----------------------------------------
attacker-app:
image: nginx:stable-alpine
container_name: sec_lab_attacker_nginx
ports:
- "8723:80"
volumes:
- ./:/var/www/html:ro
- ./docker/nginx/hacker.conf:/etc/nginx/conf.d/default.conf:ro
depends_on:
- php
networks:
- lab_net
restart: always
networks:
lab_net:
driver: bridge
volumes:
db_data: