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 container_name: sec_lab_php build: context: . dockerfile: ./docker/php/Dockerfile volumes: - ./:/var/www/html - /var/www/html/vendor 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: