85 lines
2.5 KiB
YAML
85 lines
2.5 KiB
YAML
services:
|
|
# ----------------------------------------
|
|
# MariaDB Database
|
|
# ----------------------------------------
|
|
mariadb:
|
|
image: mariadb:10.6
|
|
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:
|
|
- "80:80"
|
|
- "443:443"
|
|
volumes:
|
|
- ./:/var/www/html:ro
|
|
- ./docker/nginx/default.conf:/etc/nginx/conf.d/default.conf:ro
|
|
- ./docker/nginx/certs:/etc/nginx/certs
|
|
depends_on:
|
|
- php
|
|
networks:
|
|
- lab_net
|
|
restart: always
|
|
|
|
# ----------------------------------------
|
|
# هسته پردازشی PHP (مشترک بین دو سایت)
|
|
# ----------------------------------------
|
|
php:
|
|
container_name: sec_lab_php
|
|
build:
|
|
context: .
|
|
dockerfile: ./docker/php/Dockerfile
|
|
args:
|
|
# اینجا میتوانید آدرس Nexus داخلی سرور خود را بدهید
|
|
- COMPOSER_REGISTRY=http://192.168.1.201:8081/repository/composer-runflare/
|
|
- LINUX_REGISTRY=http://192.168.1.201:8081/repository/debian-arvan
|
|
- SECURITY_REGISTRY=http://192.168.1.201:8081/repository/debian-arvan-security
|
|
- NPM_REGISTRY=http://192.168.1.201:8081/repository/npm-group/
|
|
- NODE_REGISTRY=http://192.168.1.201:8081/repository/node-dist
|
|
volumes:
|
|
- ./:/var/www/html:rw
|
|
|
|
depends_on:
|
|
- mariadb
|
|
networks:
|
|
- lab_net
|
|
restart: always
|
|
|
|
# ----------------------------------------
|
|
# وبسرور اپلیکیشن مهاجم (Hacker)
|
|
# ----------------------------------------
|
|
attacker-app:
|
|
image: nginx:stable-alpine
|
|
container_name: sec_lab_attacker_nginx
|
|
ports:
|
|
- "58691:80"
|
|
volumes:
|
|
- ./:/var/www/html:ro # حالا هکر هم به کدهای لاراول دسترسی دارد
|
|
- ./docker/nginx/hacker.conf:/etc/nginx/conf.d/default.conf:ro # کانفیگ اختصاصی هکر
|
|
- ./docker/nginx/certs:/etc/nginx/certs
|
|
depends_on:
|
|
- php
|
|
networks:
|
|
- lab_net
|
|
restart: always
|
|
|
|
networks:
|
|
lab_net:
|
|
driver: bridge
|
|
|
|
volumes:
|
|
db_data: |