version: "3" services: mybunker: image: bunkerity/bunkerweb:1.5.0 ports: - 80:8080 - 443:8443 # ⚠️ read this if you use local folders for volumes ⚠️ # bunkerweb runs as an unprivileged user with UID/GID 101 # don't forget to edit the permissions of the files and folders accordingly # example if you need to create a directory : mkdir folder && chown root:101 folder && chmod 770 folder # or for an existing one : chown -R root:101 folder && chmod -R 770 folder # more info at https://docs.bunkerweb.io volumes: - bw-data:/data environment: - MULTISITE=yes - SERVER_NAME=app1.example.com app2.example.com # replace with your domains - API_WHITELIST_IP=127.0.0.0/8 10.20.30.0/24 - SERVE_FILES=no - DISABLE_DEFAULT_SERVER=yes - AUTO_LETS_ENCRYPT=yes - USE_CLIENT_CACHE=yes - USE_GZIP=yes - USE_REVERSE_PROXY=yes - app1.example.com_REVERSE_PROXY_URL=/ - app1.example.com_REVERSE_PROXY_HOST=http://app1 - app2.example.com_REVERSE_PROXY_URL=/ - app2.example.com_REVERSE_PROXY_HOST=http://app2 labels: - "bunkerweb.INSTANCE" # required for the scheduler to recognize the container networks: - bw-universe - net-app1 - net-app2 bw-scheduler: image: bunkerity/bunkerweb-scheduler:1.5.0 depends_on: - mybunker environment: - DOCKER_HOST=tcp://docker-proxy:2375 volumes: - bw-data:/data networks: - bw-universe - net-docker docker-proxy: image: tecnativa/docker-socket-proxy:0.1 volumes: - /var/run/docker.sock:/var/run/docker.sock:ro environment: - CONTAINERS=1 networks: - net-docker app1: image: tutum/hello-world networks: - net-app1 app2: image: tutum/hello-world networks: - net-app2 volumes: bw-data: networks: bw-universe: ipam: driver: default config: - subnet: 10.20.30.0/24 net-docker: net-app1: net-app2: