services: bunkerweb: build: context: ../.. dockerfile: ./src/bw/Dockerfile args: SKIP_MINIFY: "yes" ports: - 80:8080/tcp - 443:8443/tcp - 443:8443/udp environment: API_WHITELIST_IP: "127.0.0.0/24 10.20.30.0/24" restart: "unless-stopped" networks: bw-universe: aliases: - bunkerweb bw-services: aliases: - bunkerweb bw-scheduler: build: context: ../.. dockerfile: ./src/scheduler/Dockerfile depends_on: - bunkerweb volumes: - bw-storage:/data - ./configs/server-http/hello.conf:/data/configs/server-http/hello.conf:ro environment: BUNKERWEB_INSTANCES: "bunkerweb" SERVER_NAME: "app1.example.com" 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" CUSTOM_LOG_LEVEL: "debug" LOG_LEVEL: "info" SERVE_FILES: "no" DISABLE_DEFAULT_SERVER: "yes" USE_CLIENT_CACHE: "yes" USE_GZIP: "yes" USE_REDIS: "yes" REDIS_HOST: "redis" EXTERNAL_PLUGIN_URLS: "https://github.com/bunkerity/bunkerweb-plugins/archive/refs/heads/dev.zip" USE_REVERSE_PROXY: "yes" REVERSE_PROXY_URL: "/" REVERSE_PROXY_HOST: "http://app1:8080" CUSTOM_CONF_MODSEC_CRS_reqbody-suppress: "SecRuleRemoveById 200002" restart: "unless-stopped" networks: bw-universe: aliases: - bw-scheduler redis: # Redis service for the persistence of reports/bans/stats image: redis:8-alpine command: > redis-server --maxmemory 256mb --maxmemory-policy allkeys-lru --save 60 1000 --appendonly yes volumes: - redis-data:/data restart: "unless-stopped" networks: - bw-universe app1: image: bunkerity/bunkerweb-hello:v1.0 restart: "unless-stopped" networks: bw-services: aliases: - app1 volumes: bw-storage: redis-data: networks: bw-universe: name: bw-universe ipam: driver: default config: - subnet: 10.20.30.0/24 bw-services: name: bw-services