x-env: &env DATABASE_URI: "mariadb+pymysql://bunkerweb:secret@bw-db:3306/db" LOG_LEVEL: "info" CUSTOM_LOG_LEVEL: "debug" services: bunkerweb: build: context: ../.. dockerfile: ./src/bw/Dockerfile 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 logging: driver: syslog options: tag: "bunkerweb" syslog-address: "udp://10.20.30.254:514" bw-scheduler: build: context: ../.. dockerfile: ./src/scheduler/Dockerfile depends_on: - bunkerweb volumes: - bw-data:/data environment: <<: *env 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" 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" networks: bw-universe: aliases: - bw-scheduler bw-db: aliases: - bw-scheduler logging: driver: syslog options: tag: "bw-scheduler" syslog-address: "udp://10.20.30.254:514" bw-ui: build: context: ../.. dockerfile: ./src/ui/Dockerfile ports: - 7000:7000 volumes: - bw-logs:/var/log/bunkerweb - ../../src/ui/app:/usr/share/bunkerweb/ui/app:ro - ../../src/ui/utils:/usr/share/bunkerweb/ui/utils:ro - ../../src/ui/main.py:/usr/share/bunkerweb/ui/main.py:ro environment: <<: *env DEBUG: "1" restart: "unless-stopped" networks: bw-universe: aliases: - bw-ui bw-db: aliases: - bw-ui logging: driver: syslog options: tag: "bw-ui" syslog-address: "udp://10.20.30.254:514" bw-db: image: mariadb:11 environment: - MYSQL_RANDOM_ROOT_PASSWORD=yes - MYSQL_DATABASE=db - MYSQL_USER=bunkerweb - MYSQL_PASSWORD=secret volumes: - bw-db:/var/lib/mysql restart: "unless-stopped" networks: bw-db: aliases: - bw-db bw-syslog: image: balabit/syslog-ng:4.7.1 volumes: - bw-logs:/var/log/bunkerweb - ./syslog-ng.conf:/etc/syslog-ng/syslog-ng.conf networks: bw-universe: ipv4_address: 10.20.30.254 app1: image: nginxdemos/nginx-hello restart: "unless-stopped" networks: bw-services: aliases: - app1 volumes: bw-data: bw-db: bw-logs: networks: bw-universe: name: bw-universe ipam: driver: default config: - subnet: 10.20.30.0/24 bw-services: name: bw-services bw-db: name: bw-db