2024-04-04 22:02:05 +00:00
|
|
|
x-env: &env
|
|
|
|
|
DATABASE_URI: "mariadb+pymysql://bunkerweb:secret@bw-db:3306/db"
|
2024-09-06 13:35:56 +00:00
|
|
|
LOG_LEVEL: "info"
|
|
|
|
|
CUSTOM_LOG_LEVEL: "debug"
|
2024-04-04 22:02:05 +00:00
|
|
|
|
|
|
|
|
services:
|
|
|
|
|
bunkerweb:
|
|
|
|
|
build:
|
|
|
|
|
context: ../..
|
|
|
|
|
dockerfile: ./src/bw/Dockerfile
|
|
|
|
|
ports:
|
2024-05-27 14:34:45 +00:00
|
|
|
- 80:8080/tcp
|
|
|
|
|
- 443:8443/tcp
|
|
|
|
|
- 443:8443/udp
|
2024-04-04 22:02:05 +00:00
|
|
|
environment:
|
2025-02-10 14:28:56 +00:00
|
|
|
API_WHITELIST_IP: "127.0.0.0/24 10.20.30.0/24"
|
2024-05-23 17:27:26 +00:00
|
|
|
restart: "unless-stopped"
|
2024-04-04 22:02:05 +00:00
|
|
|
networks:
|
|
|
|
|
bw-universe:
|
|
|
|
|
aliases:
|
|
|
|
|
- bunkerweb
|
|
|
|
|
bw-services:
|
|
|
|
|
aliases:
|
|
|
|
|
- bunkerweb
|
2024-08-07 15:41:00 +00:00
|
|
|
logging:
|
|
|
|
|
driver: syslog
|
|
|
|
|
options:
|
|
|
|
|
tag: "bunkerweb"
|
|
|
|
|
syslog-address: "udp://10.20.30.254:514"
|
2024-04-04 22:02:05 +00:00
|
|
|
|
|
|
|
|
bw-scheduler:
|
|
|
|
|
build:
|
|
|
|
|
context: ../..
|
|
|
|
|
dockerfile: ./src/scheduler/Dockerfile
|
|
|
|
|
depends_on:
|
|
|
|
|
- bunkerweb
|
|
|
|
|
volumes:
|
2025-02-18 08:03:30 +00:00
|
|
|
- bw-storage:/data
|
2024-04-04 22:02:05 +00:00
|
|
|
environment:
|
|
|
|
|
<<: *env
|
2024-05-23 17:27:26 +00:00
|
|
|
BUNKERWEB_INSTANCES: "bunkerweb"
|
|
|
|
|
SERVER_NAME: "app1.example.com"
|
|
|
|
|
MULTISITE: "yes"
|
|
|
|
|
API_WHITELIST_IP: "127.0.0.0/24 10.20.30.0/24"
|
|
|
|
|
USE_BUNKERNET: "no"
|
|
|
|
|
USE_BLACKLIST: "no"
|
|
|
|
|
USE_WHITELIST: "no"
|
|
|
|
|
SEND_ANONYMOUS_REPORT: "no"
|
|
|
|
|
LOG_LEVEL: "info"
|
|
|
|
|
SERVE_FILES: "no"
|
|
|
|
|
USE_CLIENT_CACHE: "yes"
|
|
|
|
|
USE_GZIP: "yes"
|
2025-01-31 11:51:11 +00:00
|
|
|
SESSIONS_CHECK_IP: "no"
|
2024-05-23 17:27:26 +00:00
|
|
|
UI_HOST: "http://bw-ui:7000"
|
|
|
|
|
app1.example.com_USE_REVERSE_PROXY: "yes"
|
|
|
|
|
app1.example.com_REVERSE_PROXY_URL: "/"
|
|
|
|
|
app1.example.com_REVERSE_PROXY_HOST: "http://app1:8080"
|
|
|
|
|
restart: "unless-stopped"
|
2024-04-04 22:02:05 +00:00
|
|
|
networks:
|
|
|
|
|
bw-universe:
|
|
|
|
|
aliases:
|
|
|
|
|
- bw-scheduler
|
2024-05-23 17:27:26 +00:00
|
|
|
bw-db:
|
2024-04-04 22:02:05 +00:00
|
|
|
aliases:
|
|
|
|
|
- bw-scheduler
|
2024-08-07 15:41:00 +00:00
|
|
|
logging:
|
|
|
|
|
driver: syslog
|
|
|
|
|
options:
|
|
|
|
|
tag: "bw-scheduler"
|
|
|
|
|
syslog-address: "udp://10.20.30.254:514"
|
2024-04-04 22:02:05 +00:00
|
|
|
|
|
|
|
|
bw-ui:
|
|
|
|
|
build:
|
|
|
|
|
context: ../..
|
|
|
|
|
dockerfile: ./src/ui/Dockerfile
|
2024-08-29 14:54:52 +00:00
|
|
|
ports:
|
|
|
|
|
- 7000:7000
|
2024-04-04 22:02:05 +00:00
|
|
|
volumes:
|
2024-08-08 10:56:20 +00:00
|
|
|
- bw-logs:/var/log/bunkerweb
|
2024-08-26 22:39:58 +00:00
|
|
|
- ../../src/ui/app:/usr/share/bunkerweb/ui/app:ro
|
2024-12-09 10:46:35 +00:00
|
|
|
- ../../src/ui/utils:/usr/share/bunkerweb/ui/utils:ro
|
2024-04-04 22:02:05 +00:00
|
|
|
- ../../src/ui/main.py:/usr/share/bunkerweb/ui/main.py:ro
|
|
|
|
|
environment:
|
|
|
|
|
<<: *env
|
2025-01-31 11:51:11 +00:00
|
|
|
CHECK_PRIVATE_IP: "no"
|
2024-04-26 13:49:54 +00:00
|
|
|
DEBUG: "1"
|
2025-02-13 08:34:20 +00:00
|
|
|
MAX_WORKERS: "1"
|
|
|
|
|
MAX_THREADS: "4"
|
2024-05-23 17:27:26 +00:00
|
|
|
restart: "unless-stopped"
|
2024-04-04 22:02:05 +00:00
|
|
|
networks:
|
|
|
|
|
bw-universe:
|
|
|
|
|
aliases:
|
|
|
|
|
- bw-ui
|
2024-05-23 17:27:26 +00:00
|
|
|
bw-db:
|
2024-04-04 22:02:05 +00:00
|
|
|
aliases:
|
|
|
|
|
- bw-ui
|
2024-08-07 15:41:00 +00:00
|
|
|
logging:
|
|
|
|
|
driver: syslog
|
|
|
|
|
options:
|
|
|
|
|
tag: "bw-ui"
|
|
|
|
|
syslog-address: "udp://10.20.30.254:514"
|
2024-04-04 22:02:05 +00:00
|
|
|
|
|
|
|
|
bw-db:
|
|
|
|
|
image: mariadb:11
|
|
|
|
|
environment:
|
2025-02-10 14:28:56 +00:00
|
|
|
MYSQL_RANDOM_ROOT_PASSWORD: "yes"
|
|
|
|
|
MYSQL_DATABASE: "db"
|
|
|
|
|
MYSQL_USER: "bunkerweb"
|
|
|
|
|
MYSQL_PASSWORD: "secret"
|
2024-04-04 22:02:05 +00:00
|
|
|
volumes:
|
2025-02-18 08:03:30 +00:00
|
|
|
- bw-data:/var/lib/mysql
|
2024-05-23 17:27:26 +00:00
|
|
|
restart: "unless-stopped"
|
2024-04-04 22:02:05 +00:00
|
|
|
networks:
|
2024-05-23 17:27:26 +00:00
|
|
|
bw-db:
|
2024-04-04 22:02:05 +00:00
|
|
|
aliases:
|
|
|
|
|
- bw-db
|
|
|
|
|
|
2024-08-07 15:41:00 +00:00
|
|
|
bw-syslog:
|
2025-02-18 08:45:01 +00:00
|
|
|
image: balabit/syslog-ng:4.8.0
|
|
|
|
|
cap_add:
|
|
|
|
|
- NET_BIND_SERVICE # Bind to low ports
|
|
|
|
|
- NET_BROADCAST # Send broadcasts
|
|
|
|
|
- NET_RAW # Use raw sockets
|
|
|
|
|
- DAC_READ_SEARCH # Read files bypassing permissions
|
|
|
|
|
- DAC_OVERRIDE # Override file permissions
|
|
|
|
|
- CHOWN # Change ownership
|
|
|
|
|
- SYSLOG # Write to system logs
|
2024-08-07 15:41:00 +00:00
|
|
|
volumes:
|
2024-08-08 10:56:20 +00:00
|
|
|
- bw-logs:/var/log/bunkerweb
|
2024-08-07 15:41:00 +00:00
|
|
|
- ./syslog-ng.conf:/etc/syslog-ng/syslog-ng.conf
|
|
|
|
|
networks:
|
|
|
|
|
bw-universe:
|
|
|
|
|
ipv4_address: 10.20.30.254
|
|
|
|
|
|
2024-04-04 22:02:05 +00:00
|
|
|
app1:
|
|
|
|
|
image: nginxdemos/nginx-hello
|
2024-05-23 17:27:26 +00:00
|
|
|
restart: "unless-stopped"
|
2024-04-04 22:02:05 +00:00
|
|
|
networks:
|
|
|
|
|
bw-services:
|
|
|
|
|
aliases:
|
|
|
|
|
- app1
|
|
|
|
|
|
|
|
|
|
volumes:
|
|
|
|
|
bw-data:
|
2025-02-18 08:03:30 +00:00
|
|
|
bw-storage:
|
2024-08-07 15:41:00 +00:00
|
|
|
bw-logs:
|
2024-04-04 22:02:05 +00:00
|
|
|
|
|
|
|
|
networks:
|
|
|
|
|
bw-universe:
|
|
|
|
|
name: bw-universe
|
|
|
|
|
ipam:
|
|
|
|
|
driver: default
|
|
|
|
|
config:
|
|
|
|
|
- subnet: 10.20.30.0/24
|
|
|
|
|
bw-services:
|
|
|
|
|
name: bw-services
|
2024-05-23 17:27:26 +00:00
|
|
|
bw-db:
|
|
|
|
|
name: bw-db
|