x-env: &env DATABASE_URI: "mariadb+pymysql://bunkerweb:secret@bw-db:3306/db" DOCKER_HOST: "tcp://bw-docker:2375" LOG_LEVEL: "debug" services: mybunker: build: context: ../.. dockerfile: src/bw/Dockerfile ports: - 80:80 - 443:443 environment: SERVER_NAME: "" MULTISITE: "yes" HTTP_PORT: "80" HTTPS_PORT: "443" API_WHITELIST_IP: "127.0.0.0/8 10.20.30.0/24" 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) } } 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: - mybunker - bw-docker volumes: - bw-data:/data environment: <<: *env networks: - bw-docker - bw-universe bw-ui: build: context: ../.. dockerfile: src/ui/Dockerfile depends_on: - mybunker - bw-docker environment: <<: *env networks: - bw-docker - bw-universe bw-docker: image: tecnativa/docker-socket-proxy:nightly volumes: - /var/run/docker.sock:/var/run/docker.sock:ro environment: - CONTAINERS=1 networks: - bw-docker 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-docker app1: image: nginxdemos/nginx-hello networks: bw-services: ipv4_address: 192.168.0.4 # ui-tests: # build: . # environment: # - PYTHONUNBUFFERED=1 # extra_hosts: # - "www.example.com:192.168.0.2" # - "app1.example.com:192.168.0.2" # networks: # bw-services: # ipv4_address: 192.168.0.3 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-docker: name: bw-docker