version: "3" services: mybunker: image: bunkerity/bunkerweb:1.4.3 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 - 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://myapp1 - app2.example.com_REVERSE_PROXY_URL=/ - app2.example.com_REVERSE_PROXY_HOST=http://myapp2 # global config applied at server context - | CUSTOM_CONF_SERVER_HTTP_hello-world= location /hello { default_type 'text/plain'; content_by_lua_block { ngx.say('world') } } # site configs applied at server context - | app1.example.com_CUSTOM_CONF_SERVER_HTTP_dummy= location = /app1 { default_type 'text/plain'; content_by_lua_block { ngx.say('hello app1') } } - | app2.example.com_CUSTOM_CONF_SERVER_HTTP_dummy= location = /app2 { default_type 'text/plain'; content_by_lua_block { ngx.say('hello app2') } } myapp1: image: tutum/hello-world myapp2: image: tutum/hello-world volumes: bw_data: