x-env: &env DATABASE_URI: "mariadb+pymysql://bunkerweb:secret@bw-db:3306/db" CUSTOM_LOG_LEVEL: "debug" services: bw: build: context: ../.. dockerfile: src/bw/Dockerfile ports: - 80:80 - 443:443 environment: API_WHITELIST_IP: "127.0.0.0/8 10.20.30.0/24" labels: - "bunkerweb.INSTANCE=yes" networks: bw-universe: bw-services: ipv4_address: 192.168.0.2 bw-scheduler: build: context: ../.. dockerfile: src/scheduler/Dockerfile depends_on: - bw volumes: - bw-data:/data environment: <<: *env BUNKERWEB_INSTANCES: "bw" SERVER_NAME: "" MULTISITE: "yes" HTTP_PORT: "80" HTTPS_PORT: "443" API_WHITELIST_IP: "127.0.0.0/8 10.20.30.0/24" LOG_LEVEL: "info" USE_BUNKERNET: "no" USE_BLACKLIST: "no" SEND_ANONYMOUS_REPORT: "no" USE_CLIENT_CACHE: "yes" USE_GZIP: "yes" DATASTORE_MEMORY_SIZE: "384m" BAD_BEHAVIOR_THRESHOLD: "30" UI_HOST: "http://bw-ui:7000" CUSTOM_CONF_SERVER_HTTP_ready: | location /ready { default_type 'text/plain'; rewrite_by_lua_block { ngx.print('ready') ngx.flush(true) ngx.exit(ngx.HTTP_OK) } } networks: - bw-universe - bw-db bw-ui: build: context: ../.. dockerfile: src/ui/Dockerfile depends_on: - bw environment: <<: *env networks: - bw-universe - bw-db 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 networks: - bw-db app1: image: nginxdemos/nginx-hello networks: bw-services: ipv4_address: 192.168.0.4 volumes: bw-data: bw-db: networks: bw-universe: name: bw-universe ipam: driver: default config: - subnet: 10.20.30.0/24 bw-services: name: bw-services ipam: driver: default config: - subnet: 192.168.0.0/24 bw-db: name: bw-db