From 6cb714be03dd37afe6104f613f2d3069c25125fb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Th=C3=A9ophile=20Diot?= Date: Fri, 17 Feb 2023 09:53:21 +0100 Subject: [PATCH] Start adding integrations examples --- misc/integrations/autoconf.mariadb.ui.yml | 102 +++++++++++++++++++++ misc/integrations/autoconf.mariadb.yml | 79 ++++++++++++++++ misc/integrations/autoconf.mysql.ui.yml | 102 +++++++++++++++++++++ misc/integrations/autoconf.mysql.yml | 79 ++++++++++++++++ misc/integrations/autoconf.postgres.ui.yml | 101 ++++++++++++++++++++ misc/integrations/autoconf.postgres.yml | 78 ++++++++++++++++ misc/integrations/autoconf.ui.yml | 92 +++++++++++++++++++ misc/integrations/autoconf.yml | 68 ++++++++++++++ misc/integrations/docker.mariadb.ui.yml | 91 ++++++++++++++++++ misc/integrations/docker.mariadb.yml | 65 +++++++++++++ misc/integrations/docker.mysql.ui.yml | 91 ++++++++++++++++++ misc/integrations/docker.mysql.yml | 65 +++++++++++++ misc/integrations/docker.postgres.ui.yml | 90 ++++++++++++++++++ misc/integrations/docker.postgres.yml | 64 +++++++++++++ misc/integrations/docker.ui.yml | 76 +++++++++++++++ misc/integrations/docker.yml | 53 +++++++++++ misc/integrations/swarm.mariadb.yml | 99 ++++++++++++++++++++ misc/integrations/swarm.mysql.yml | 99 ++++++++++++++++++++ misc/integrations/swarm.postgres.yml | 98 ++++++++++++++++++++ 19 files changed, 1592 insertions(+) create mode 100644 misc/integrations/autoconf.mariadb.ui.yml create mode 100644 misc/integrations/autoconf.mariadb.yml create mode 100644 misc/integrations/autoconf.mysql.ui.yml create mode 100644 misc/integrations/autoconf.mysql.yml create mode 100644 misc/integrations/autoconf.postgres.ui.yml create mode 100644 misc/integrations/autoconf.postgres.yml create mode 100644 misc/integrations/autoconf.ui.yml create mode 100644 misc/integrations/autoconf.yml create mode 100644 misc/integrations/docker.mariadb.ui.yml create mode 100644 misc/integrations/docker.mariadb.yml create mode 100644 misc/integrations/docker.mysql.ui.yml create mode 100644 misc/integrations/docker.mysql.yml create mode 100644 misc/integrations/docker.postgres.ui.yml create mode 100644 misc/integrations/docker.postgres.yml create mode 100644 misc/integrations/docker.ui.yml create mode 100644 misc/integrations/docker.yml create mode 100644 misc/integrations/swarm.mariadb.yml create mode 100644 misc/integrations/swarm.mysql.yml create mode 100644 misc/integrations/swarm.postgres.yml diff --git a/misc/integrations/autoconf.mariadb.ui.yml b/misc/integrations/autoconf.mariadb.ui.yml new file mode 100644 index 000000000..0402d6b8e --- /dev/null +++ b/misc/integrations/autoconf.mariadb.ui.yml @@ -0,0 +1,102 @@ +version: "3.5" + +services: + bunkerweb: + image: bunkerity/bunkerweb:1.5.0 + ports: + - 80:8080 + - 443:8443 + labels: + - "bunkerweb.INSTANCE" + environment: + - SERVER_NAME= + - DATABASE_URI=mariadb+pymysql://bunkerweb:changeme@bw-db:3306/db + - AUTOCONF_MODE=yes + - MULTISITE=yes + - API_WHITELIST_IP=127.0.0.0/8 10.20.30.0/24 + networks: + - bw-universe + - bw-services + + bw-autoconf: + image: bunkerity/bunkerweb-autoconf:1.5.0 + depends_on: + - bunkerweb + - bw-docker + environment: + - DATABASE_URI=mariadb+pymysql://bunkerweb:changeme@bw-db:3306/db + - DOCKER_HOST=tcp://bw-docker:2375 + networks: + - bw-universe + - bw-docker + + bw-scheduler: + image: bunkerity/bunkerweb-scheduler:1.5.0 + depends_on: + - bunkerweb + - bw-docker + environment: + - DATABASE_URI=mariadb+pymysql://bunkerweb:changeme@bw-db:3306/db + - DOCKER_HOST=tcp://bw-docker:2375 + networks: + - bw-universe + - bw-docker + + bw-docker: + image: tecnativa/docker-socket-proxy + volumes: + - /var/run/docker.sock:/var/run/docker.sock:ro + environment: + - CONTAINERS=1 + networks: + - bw-docker + + bw-db: + image: mariadb:10.10 + environment: + - MYSQL_RANDOM_ROOT_PASSWORD=yes + - MYSQL_DATABASE=db + - MYSQL_USER=bunkerweb + - MYSQL_PASSWORD=changeme + volumes: + - bw-data:/var/lib/mysql + networks: + - bw-docker + + bw-ui: + image: bunkerity/bunkerweb-ui:1.5.0 + networks: + bw-docker: + bw-universe: + aliases: + - bw-ui + environment: + - DATABASE_URI=mariadb+pymysql://bunkerweb:changeme@bw-db:3306/db + - DOCKER_HOST=tcp://bw-docker:2375 + - ADMIN_USERNAME=admin + - ADMIN_PASSWORD=changeme + - ABSOLUTE_URI=http://www.example.com/changeme + labels: + - "bunkerweb.SERVER_NAME=www.example.com" + - "bunkerweb.USE_UI=yes" + - "bunkerweb.USE_REVERSE_PROXY=yes" + - "bunkerweb.REVERSE_PROXY_URL=/changeme" + - "bunkerweb.REVERSE_PROXY_HOST=http://bw-ui:7000" + - "bunkerweb.REVERSE_PROXY_HEADERS=X-Script-Name /changeme" + - "bunkerweb.INTERCEPTED_ERROR_CODES=400 401 404 405 413 429 500 501 502 503 504" + - 'bunkerweb.CUSTOM_CONF_MODSEC_CRS_remove_ui_false_positives=SecRule REQUEST_FILENAME "@rx /global_config$$" "id:999,ctl:ruleRemoveByTag=platform-pgsql,nolog"' + +volumes: + bw-data: + +networks: + bw-universe: + name: bw-universe + ipam: + driver: default + config: + - subnet: 10.20.30.0/24 + bw-services: + name: bw-services + bw-docker: + name: bw-docker diff --git a/misc/integrations/autoconf.mariadb.yml b/misc/integrations/autoconf.mariadb.yml new file mode 100644 index 000000000..6c2e6203e --- /dev/null +++ b/misc/integrations/autoconf.mariadb.yml @@ -0,0 +1,79 @@ +version: "3.5" + +services: + bunkerweb: + image: bunkerity/bunkerweb:1.5.0 + ports: + - 80:8080 + - 443:8443 + labels: + - "bunkerweb.INSTANCE" + environment: + - SERVER_NAME= + - DATABASE_URI=mariadb+pymysql://bunkerweb:changeme@bw-db:3306/db + - AUTOCONF_MODE=yes + - MULTISITE=yes + - API_WHITELIST_IP=127.0.0.0/8 10.20.30.0/24 + networks: + - bw-universe + - bw-services + + bw-autoconf: + image: bunkerity/bunkerweb-autoconf:1.5.0 + depends_on: + - bunkerweb + - bw-docker + environment: + - DATABASE_URI=mariadb+pymysql://bunkerweb:changeme@bw-db:3306/db + - DOCKER_HOST=tcp://bw-docker:2375 + networks: + - bw-universe + - bw-docker + + bw-scheduler: + image: bunkerity/bunkerweb-scheduler:1.5.0 + depends_on: + - bunkerweb + - bw-docker + environment: + - DATABASE_URI=mariadb+pymysql://bunkerweb:changeme@bw-db:3306/db + - DOCKER_HOST=tcp://bw-docker:2375 + networks: + - bw-universe + - bw-docker + + bw-docker: + image: tecnativa/docker-socket-proxy + volumes: + - /var/run/docker.sock:/var/run/docker.sock:ro + environment: + - CONTAINERS=1 + networks: + - bw-docker + + bw-db: + image: mariadb:10.10 + environment: + - MYSQL_RANDOM_ROOT_PASSWORD=yes + - MYSQL_DATABASE=db + - MYSQL_USER=bunkerweb + - MYSQL_PASSWORD=changeme + volumes: + - bw-data:/var/lib/mysql + networks: + - bw-docker + +volumes: + bw-data: + +networks: + bw-universe: + name: bw-universe + ipam: + driver: default + config: + - subnet: 10.20.30.0/24 + bw-services: + name: bw-services + bw-docker: + name: bw-docker diff --git a/misc/integrations/autoconf.mysql.ui.yml b/misc/integrations/autoconf.mysql.ui.yml new file mode 100644 index 000000000..043d99cff --- /dev/null +++ b/misc/integrations/autoconf.mysql.ui.yml @@ -0,0 +1,102 @@ +version: "3.5" + +services: + bunkerweb: + image: bunkerity/bunkerweb:1.5.0 + ports: + - 80:8080 + - 443:8443 + labels: + - "bunkerweb.INSTANCE" + environment: + - SERVER_NAME= + - DATABASE_URI=mysql+pymysql://bunkerweb:changeme@bw-db:3306/db + - AUTOCONF_MODE=yes + - MULTISITE=yes + - API_WHITELIST_IP=127.0.0.0/8 10.20.30.0/24 + networks: + - bw-universe + - bw-services + + bw-autoconf: + image: bunkerity/bunkerweb-autoconf:1.5.0 + depends_on: + - bunkerweb + - bw-docker + environment: + - DATABASE_URI=mysql+pymysql://bunkerweb:changeme@bw-db:3306/db + - DOCKER_HOST=tcp://bw-docker:2375 + networks: + - bw-universe + - bw-docker + + bw-scheduler: + image: bunkerity/bunkerweb-scheduler:1.5.0 + depends_on: + - bunkerweb + - bw-docker + environment: + - DATABASE_URI=mysql+pymysql://bunkerweb:changeme@bw-db:3306/db + - DOCKER_HOST=tcp://bw-docker:2375 + networks: + - bw-universe + - bw-docker + + bw-docker: + image: tecnativa/docker-socket-proxy + volumes: + - /var/run/docker.sock:/var/run/docker.sock:ro + environment: + - CONTAINERS=1 + networks: + - bw-docker + + bw-db: + image: mysql:8.0 + environment: + - MYSQL_RANDOM_ROOT_PASSWORD=yes + - MYSQL_DATABASE=db + - MYSQL_USER=bunkerweb + - MYSQL_PASSWORD=changeme + volumes: + - bw-data:/var/lib/mysql + networks: + - bw-docker + + bw-ui: + image: bunkerity/bunkerweb-ui:1.5.0 + networks: + bw-docker: + bw-universe: + aliases: + - bw-ui + environment: + - DATABASE_URI=mysql+pymysql://bunkerweb:changeme@bw-db:3306/db + - DOCKER_HOST=tcp://bw-docker:2375 + - ADMIN_USERNAME=admin + - ADMIN_PASSWORD=admin + - ABSOLUTE_URI=http://www.example.com/admin + labels: + - "bunkerweb.SERVER_NAME=www.example.com" + - "bunkerweb.USE_UI=yes" + - "bunkerweb.USE_REVERSE_PROXY=yes" + - "bunkerweb.REVERSE_PROXY_URL=/admin" + - "bunkerweb.REVERSE_PROXY_HOST=http://bw-ui:7000" + - "bunkerweb.REVERSE_PROXY_HEADERS=X-Script-Name /admin" + - "bunkerweb.INTERCEPTED_ERROR_CODES=400 401 405 413 429 500 501 502 503 504" + - 'bunkerweb.CUSTOM_CONF_MODSEC_CRS_remove_ui_false_positives=SecRule REQUEST_FILENAME "@rx /global_config$$" "id:999,ctl:ruleRemoveByTag=platform-pgsql,nolog"' + +volumes: + bw-data: + +networks: + bw-universe: + name: bw-universe + ipam: + driver: default + config: + - subnet: 10.20.30.0/24 + bw-services: + name: bw-services + bw-docker: + name: bw-docker diff --git a/misc/integrations/autoconf.mysql.yml b/misc/integrations/autoconf.mysql.yml new file mode 100644 index 000000000..4ee5c42ad --- /dev/null +++ b/misc/integrations/autoconf.mysql.yml @@ -0,0 +1,79 @@ +version: "3.5" + +services: + bunkerweb: + image: bunkerity/bunkerweb:1.5.0 + ports: + - 80:8080 + - 443:8443 + labels: + - "bunkerweb.INSTANCE" + environment: + - SERVER_NAME= + - DATABASE_URI=mysql+pymysql://bunkerweb:changeme@bw-db:3306/db + - AUTOCONF_MODE=yes + - MULTISITE=yes + - API_WHITELIST_IP=127.0.0.0/8 10.20.30.0/24 + networks: + - bw-universe + - bw-services + + bw-autoconf: + image: bunkerity/bunkerweb-autoconf:1.5.0 + depends_on: + - bunkerweb + - bw-docker + environment: + - DATABASE_URI=mysql+pymysql://bunkerweb:changeme@bw-db:3306/db + - DOCKER_HOST=tcp://bw-docker:2375 + networks: + - bw-universe + - bw-docker + + bw-scheduler: + image: bunkerity/bunkerweb-scheduler:1.5.0 + depends_on: + - bunkerweb + - bw-docker + environment: + - DATABASE_URI=mysql+pymysql://bunkerweb:changeme@bw-db:3306/db + - DOCKER_HOST=tcp://bw-docker:2375 + networks: + - bw-universe + - bw-docker + + bw-docker: + image: tecnativa/docker-socket-proxy + volumes: + - /var/run/docker.sock:/var/run/docker.sock:ro + environment: + - CONTAINERS=1 + networks: + - bw-docker + + bw-db: + image: mysql:8.0 + environment: + - MYSQL_RANDOM_ROOT_PASSWORD=yes + - MYSQL_DATABASE=db + - MYSQL_USER=bunkerweb + - MYSQL_PASSWORD=changeme + volumes: + - bw-data:/var/lib/mysql + networks: + - bw-docker + +volumes: + bw-data: + +networks: + bw-universe: + name: bw-universe + ipam: + driver: default + config: + - subnet: 10.20.30.0/24 + bw-services: + name: bw-services + bw-docker: + name: bw-docker diff --git a/misc/integrations/autoconf.postgres.ui.yml b/misc/integrations/autoconf.postgres.ui.yml new file mode 100644 index 000000000..51c1facc4 --- /dev/null +++ b/misc/integrations/autoconf.postgres.ui.yml @@ -0,0 +1,101 @@ +version: "3.5" + +services: + bunkerweb: + image: bunkerity/bunkerweb:1.5.0 + ports: + - 80:8080 + - 443:8443 + labels: + - "bunkerweb.INSTANCE" + environment: + - SERVER_NAME= + - DATABASE_URI=postgresql://bunkerweb:changeme@bw-db:5432/db + - AUTOCONF_MODE=yes + - MULTISITE=yes + - API_WHITELIST_IP=127.0.0.0/8 10.20.30.0/24 + networks: + - bw-universe + - bw-services + + bw-autoconf: + image: bunkerity/bunkerweb-autoconf:1.5.0 + depends_on: + - bunkerweb + - bw-docker + environment: + - DATABASE_URI=postgresql://bunkerweb:changeme@bw-db:5432/db + - DOCKER_HOST=tcp://bw-docker:2375 + networks: + - bw-universe + - bw-docker + + bw-scheduler: + image: bunkerity/bunkerweb-scheduler:1.5.0 + depends_on: + - bunkerweb + - bw-docker + environment: + - DATABASE_URI=postgresql://bunkerweb:changeme@bw-db:5432/db + - DOCKER_HOST=tcp://bw-docker:2375 + networks: + - bw-universe + - bw-docker + + bw-docker: + image: tecnativa/docker-socket-proxy + volumes: + - /var/run/docker.sock:/var/run/docker.sock:ro + environment: + - CONTAINERS=1 + networks: + - bw-docker + + bw-db: + image: postgres:15.1 + environment: + - POSTGRES_USER=bunkerweb + - POSTGRES_PASSWORD=changeme + - POSTGRES_DB=db + volumes: + - bw-data:/var/lib/postgresql/data + networks: + - bw-docker + + bw-ui: + image: bunkerity/bunkerweb-ui:1.5.0 + networks: + bw-docker: + bw-universe: + aliases: + - bw-ui + environment: + - DATABASE_URI=postgresql://bunkerweb:changeme@bw-db:5432/db + - DOCKER_HOST=tcp://bw-docker:2375 + - ADMIN_USERNAME=admin + - ADMIN_PASSWORD=changeme + - ABSOLUTE_URI=http://www.example.com/changeme + labels: + - "bunkerweb.SERVER_NAME=www.example.com" + - "bunkerweb.USE_UI=yes" + - "bunkerweb.USE_REVERSE_PROXY=yes" + - "bunkerweb.REVERSE_PROXY_URL=/changeme" + - "bunkerweb.REVERSE_PROXY_HOST=http://bw-ui:7000" + - "bunkerweb.REVERSE_PROXY_HEADERS=X-Script-Name /changeme" + - "bunkerweb.INTERCEPTED_ERROR_CODES=400 401 404 405 413 429 500 501 502 503 504" + - 'bunkerweb.CUSTOM_CONF_MODSEC_CRS_remove_ui_false_positives=SecRule REQUEST_FILENAME "@rx /global_config$$" "id:999,ctl:ruleRemoveByTag=platform-pgsql,nolog"' + +volumes: + bw-data: + +networks: + bw-universe: + name: bw-universe + ipam: + driver: default + config: + - subnet: 10.20.30.0/24 + bw-services: + name: bw-services + bw-docker: + name: bw-docker diff --git a/misc/integrations/autoconf.postgres.yml b/misc/integrations/autoconf.postgres.yml new file mode 100644 index 000000000..6bf426c15 --- /dev/null +++ b/misc/integrations/autoconf.postgres.yml @@ -0,0 +1,78 @@ +version: "3.5" + +services: + bunkerweb: + image: bunkerity/bunkerweb:1.5.0 + ports: + - 80:8080 + - 443:8443 + labels: + - "bunkerweb.INSTANCE" + environment: + - SERVER_NAME= + - DATABASE_URI=postgresql://bunkerweb:changeme@bw-db:5432/db + - AUTOCONF_MODE=yes + - MULTISITE=yes + - API_WHITELIST_IP=127.0.0.0/8 10.20.30.0/24 + networks: + - bw-universe + - bw-services + + bw-autoconf: + image: bunkerity/bunkerweb-autoconf:1.5.0 + depends_on: + - bunkerweb + - bw-docker + environment: + - DATABASE_URI=postgresql://bunkerweb:changeme@bw-db:5432/db + - DOCKER_HOST=tcp://bw-docker:2375 + networks: + - bw-universe + - bw-docker + + bw-scheduler: + image: bunkerity/bunkerweb-scheduler:1.5.0 + depends_on: + - bunkerweb + - bw-docker + environment: + - DATABASE_URI=postgresql://bunkerweb:changeme@bw-db:5432/db + - DOCKER_HOST=tcp://bw-docker:2375 + networks: + - bw-universe + - bw-docker + + bw-docker: + image: tecnativa/docker-socket-proxy + volumes: + - /var/run/docker.sock:/var/run/docker.sock:ro + environment: + - CONTAINERS=1 + networks: + - bw-docker + + bw-db: + image: postgres:15.1 + environment: + - POSTGRES_USER=bunkerweb + - POSTGRES_PASSWORD=changeme + - POSTGRES_DB=db + volumes: + - bw-data:/var/lib/postgresql/data + networks: + - bw-docker + +volumes: + bw-data: + +networks: + bw-universe: + name: bw-universe + ipam: + driver: default + config: + - subnet: 10.20.30.0/24 + bw-services: + name: bw-services + bw-docker: + name: bw-docker diff --git a/misc/integrations/autoconf.ui.yml b/misc/integrations/autoconf.ui.yml new file mode 100644 index 000000000..90a5b6953 --- /dev/null +++ b/misc/integrations/autoconf.ui.yml @@ -0,0 +1,92 @@ +version: "3.5" + +services: + bunkerweb: + image: bunkerity/bunkerweb:1.5.0 + ports: + - 80:8080 + - 443:8443 + labels: + - "bunkerweb.INSTANCE" + environment: + - SERVER_NAME= + - AUTOCONF_MODE=yes + - MULTISITE=yes + - API_WHITELIST_IP=127.0.0.0/8 10.20.30.0/24 + networks: + - bw-universe + - bw-services + + bw-autoconf: + image: bunkerity/bunkerweb-autoconf:1.5.0 + depends_on: + - bunkerweb + - bw-docker + volumes: + - bw-data:/data + environment: + - DOCKER_HOST=tcp://bw-docker:2375 + networks: + - bw-universe + - bw-docker + + bw-scheduler: + image: bunkerity/bunkerweb-scheduler:1.5.0 + depends_on: + - bunkerweb + - bw-docker + volumes: + - bw-data:/data + environment: + - DOCKER_HOST=tcp://bw-docker:2375 + networks: + - bw-universe + - bw-docker + + bw-docker: + image: tecnativa/docker-socket-proxy + volumes: + - /var/run/docker.sock:/var/run/docker.sock:ro + environment: + - CONTAINERS=1 + networks: + - bw-docker + + bw-ui: + image: bunkerity/bunkerweb-ui:1.5.0 + networks: + bw-docker: + bw-universe: + aliases: + - bw-ui + volumes: + - bw-data:/data + environment: + - DOCKER_HOST=tcp://bw-docker:2375 + - ADMIN_USERNAME=admin + - ADMIN_PASSWORD=changeme + - ABSOLUTE_URI=http://www.example.com/changeme + labels: + - "bunkerweb.SERVER_NAME=www.example.com" + - "bunkerweb.USE_UI=yes" + - "bunkerweb.USE_REVERSE_PROXY=yes" + - "bunkerweb.REVERSE_PROXY_URL=/changeme" + - "bunkerweb.REVERSE_PROXY_HOST=http://bw-ui:7000" + - "bunkerweb.REVERSE_PROXY_HEADERS=X-Script-Name /changeme" + - "bunkerweb.INTERCEPTED_ERROR_CODES=400 401 405 413 429 500 501 502 503 504" + - 'bunkerweb.CUSTOM_CONF_MODSEC_CRS_remove_ui_false_positives=SecRule REQUEST_FILENAME "@rx /global_config$$" "id:999,ctl:ruleRemoveByTag=platform-pgsql,nolog"' + +volumes: + bw-data: + +networks: + bw-universe: + name: bw-universe + ipam: + driver: default + config: + - subnet: 10.20.30.0/24 + bw-services: + name: bw-services + bw-docker: + name: bw-docker diff --git a/misc/integrations/autoconf.yml b/misc/integrations/autoconf.yml new file mode 100644 index 000000000..ed1204d13 --- /dev/null +++ b/misc/integrations/autoconf.yml @@ -0,0 +1,68 @@ +version: "3.5" + +services: + bunkerweb: + image: bunkerity/bunkerweb:1.5.0 + ports: + - 80:8080 + - 443:8443 + labels: + - "bunkerweb.INSTANCE" + environment: + - SERVER_NAME= + - AUTOCONF_MODE=yes + - MULTISITE=yes + - API_WHITELIST_IP=127.0.0.0/8 10.20.30.0/24 + networks: + - bw-universe + - bw-services + + bw-autoconf: + image: bunkerity/bunkerweb-autoconf:1.5.0 + depends_on: + - bunkerweb + - bw-docker + environment: + - DOCKER_HOST=tcp://bw-docker:2375 + volumes: + - bw-data:/data + networks: + - bw-universe + - bw-docker + + bw-scheduler: + image: bunkerity/bunkerweb-scheduler:1.5.0 + depends_on: + - bunkerweb + - bw-docker + volumes: + - bw-data:/data + environment: + - DOCKER_HOST=tcp://bw-docker:2375 + networks: + - bw-universe + - bw-docker + + bw-docker: + image: tecnativa/docker-socket-proxy + volumes: + - /var/run/docker.sock:/var/run/docker.sock:ro + environment: + - CONTAINERS=1 + networks: + - bw-docker + +volumes: + bw-data: + +networks: + bw-universe: + name: bw-universe + ipam: + driver: default + config: + - subnet: 10.20.30.0/24 + bw-services: + name: bw-services + bw-docker: + name: bw-docker diff --git a/misc/integrations/docker.mariadb.ui.yml b/misc/integrations/docker.mariadb.ui.yml new file mode 100644 index 000000000..eebffa056 --- /dev/null +++ b/misc/integrations/docker.mariadb.ui.yml @@ -0,0 +1,91 @@ +version: "3.5" + +services: + bunkerweb: + image: bunkerity/bunkerweb:1.5.0 + ports: + - 80:8080 + - 443:8443 + labels: + - "bunkerweb.INSTANCE" + environment: + - SERVER_NAME=www.example.com + - MULTISITE=yes + - DATABASE_URI=mariadb+pymysql://bunkerweb:changeme@bw-db:3306/db # Remember to set a stronger password for the database + - API_WHITELIST_IP=127.0.0.0/8 10.20.30.0/24 + - DISABLE_DEFAULT_SERVER=yes + - USE_CLIENT_CACHE=yes + - USE_GZIP=yes + - www.example.com_USE_UI=yes + - www.example.com_SERVE_FILES=no + - www.example.com_USE_REVERSE_PROXY=yes + - www.example.com_REVERSE_PROXY_URL=/admin/ + - www.example.com_REVERSE_PROXY_HOST=http://bw-ui:7000 + - www.example.com_REVERSE_PROXY_HEADERS=X-Script-Name /admin + - www.example.com_INTERCEPTED_ERROR_CODES=400 401 405 413 429 500 501 502 503 504 + - www.example.com_CUSTOM_CONF_MODSEC_CRS_config=SecRule REQUEST_FILENAME "@rx /global_config$$" "id:999,ctl:ruleRemoveByTag=platform-pgsql,nolog" + networks: + - bw-universe + - bw-services + + bw-scheduler: + image: bunkerity/bunkerweb-scheduler:1.5.0 + depends_on: + - bunkerweb + - bw-docker + environment: + - DATABASE_URI=mariadb+pymysql://bunkerweb:changeme@bw-db:3306/db # Remember to set a stronger password for the database + - DOCKER_HOST=tcp://bw-docker:2375 + networks: + - bw-universe + - bw-docker + + bw-docker: + image: tecnativa/docker-socket-proxy + volumes: + - /var/run/docker.sock:/var/run/docker.sock:ro + environment: + - CONTAINERS=1 + networks: + - bw-docker + + bw-ui: + image: bunkerity/bunkerweb-ui:1.5.0 + depends_on: + - bw-docker + environment: + - DATABASE_URI=mariadb+pymysql://bunkerweb:changeme@bw-db:3306/db # Remember to set a stronger password for the database + - DOCKER_HOST=tcp://bw-docker:2375 + - ADMIN_USERNAME=admin + - ADMIN_PASSWORD=changeme # Remember to set a stronger password for the admin user + - ABSOLUTE_URI=http://www.example.com/changeme + networks: + - bw-universe + - bw-docker + + bw-db: + image: mariadb:10.10 + environment: + - MYSQL_RANDOM_ROOT_PASSWORD=yes + - MYSQL_DATABASE=db + - MYSQL_USER=bunkerweb + - MYSQL_PASSWORD=changeme # Remember to set a stronger password for the database + volumes: + - bw-data:/var/lib/mysql + networks: + - bw-docker + +volumes: + bw-data: + +networks: + bw-universe: + name: bw-universe + ipam: + driver: default + config: + - subnet: 10.20.30.0/24 + bw-services: + name: bw-services + bw-docker: + name: bw-docker diff --git a/misc/integrations/docker.mariadb.yml b/misc/integrations/docker.mariadb.yml new file mode 100644 index 000000000..f7a5a2a64 --- /dev/null +++ b/misc/integrations/docker.mariadb.yml @@ -0,0 +1,65 @@ +version: "3.5" + +services: + bunkerweb: + image: bunkerity/bunkerweb:1.5.0 + ports: + - 80:8080 + - 443:8443 + labels: + - "bunkerweb.INSTANCE" + environment: + - SERVER_NAME=www.example.com + - DATABASE_URI=mariadb+pymysql://bunkerweb:changeme@bw-db:3306/db # Remember to set a stronger password for the database + - API_WHITELIST_IP=127.0.0.0/8 10.20.30.0/24 + networks: + - bw-universe + - bw-services + + bw-scheduler: + image: bunkerity/bunkerweb-scheduler:1.5.0 + depends_on: + - bunkerweb + - bw-docker + environment: + - DATABASE_URI=mariadb+pymysql://bunkerweb:changeme@bw-db:3306/db # Remember to set a stronger password for the database + - DOCKER_HOST=tcp://bw-docker:2375 + networks: + - bw-universe + - bw-docker + + bw-docker: + image: tecnativa/docker-socket-proxy + volumes: + - /var/run/docker.sock:/var/run/docker.sock:ro + environment: + - CONTAINERS=1 + networks: + - bw-docker + + bw-db: + image: mariadb:10.10 + environment: + - MYSQL_RANDOM_ROOT_PASSWORD=yes + - MYSQL_DATABASE=db + - MYSQL_USER=bunkerweb + - MYSQL_PASSWORD=changeme # Remember to set a stronger password for the database + volumes: + - bw-data:/var/lib/mysql + networks: + - bw-docker + +volumes: + bw-data: + +networks: + bw-universe: + name: bw-universe + ipam: + driver: default + config: + - subnet: 10.20.30.0/24 + bw-services: + name: bw-services + bw-docker: + name: bw-docker diff --git a/misc/integrations/docker.mysql.ui.yml b/misc/integrations/docker.mysql.ui.yml new file mode 100644 index 000000000..b49dd086f --- /dev/null +++ b/misc/integrations/docker.mysql.ui.yml @@ -0,0 +1,91 @@ +version: "3.5" + +services: + bunkerweb: + image: bunkerity/bunkerweb:1.5.0 + ports: + - 80:8080 + - 443:8443 + labels: + - "bunkerweb.INSTANCE" + environment: + - SERVER_NAME=www.example.com + - MULTISITE=yes + - DATABASE_URI=mysql+pymysql://bunkerweb:changeme@bw-db:3306/db # Remember to set a stronger password for the database + - API_WHITELIST_IP=127.0.0.0/8 10.20.30.0/24 + - DISABLE_DEFAULT_SERVER=yes + - USE_CLIENT_CACHE=yes + - USE_GZIP=yes + - www.example.com_USE_UI=yes + - www.example.com_SERVE_FILES=no + - www.example.com_USE_REVERSE_PROXY=yes + - www.example.com_REVERSE_PROXY_URL=/admin/ + - www.example.com_REVERSE_PROXY_HOST=http://bw-ui:7000 + - www.example.com_REVERSE_PROXY_HEADERS=X-Script-Name /admin + - www.example.com_INTERCEPTED_ERROR_CODES=400 401 405 413 429 500 501 502 503 504 + - www.example.com_CUSTOM_CONF_MODSEC_CRS_config=SecRule REQUEST_FILENAME "@rx /global_config$$" "id:999,ctl:ruleRemoveByTag=platform-pgsql,nolog" + networks: + - bw-universe + - bw-services + + bw-scheduler: + image: bunkerity/bunkerweb-scheduler:1.5.0 + depends_on: + - bunkerweb + - bw-docker + environment: + - DATABASE_URI=mysql+pymysql://bunkerweb:changeme@bw-db:3306/db # Remember to set a stronger password for the database + - DOCKER_HOST=tcp://bw-docker:2375 + networks: + - bw-universe + - bw-docker + + bw-docker: + image: tecnativa/docker-socket-proxy + volumes: + - /var/run/docker.sock:/var/run/docker.sock:ro + environment: + - CONTAINERS=1 + networks: + - bw-docker + + bw-ui: + image: bunkerity/bunkerweb-ui:1.5.0 + depends_on: + - bw-docker + environment: + - DATABASE_URI=mysql+pymysql://bunkerweb:changeme@bw-db:3306/db # Remember to set a stronger password for the database + - DOCKER_HOST=tcp://bw-docker:2375 + - ADMIN_USERNAME=admin + - ADMIN_PASSWORD=changeme # Remember to set a stronger password for the admin user + - ABSOLUTE_URI=http://www.example.com/changeme + networks: + - bw-universe + - bw-docker + + bw-db: + image: mysql:8.0 + environment: + - MYSQL_RANDOM_ROOT_PASSWORD=yes + - MYSQL_DATABASE=db + - MYSQL_USER=bunkerweb + - MYSQL_PASSWORD=changeme # Remember to set a stronger password for the database + volumes: + - bw-data:/var/lib/mysql + networks: + - bw-docker + +volumes: + bw-data: + +networks: + bw-universe: + name: bw-universe + ipam: + driver: default + config: + - subnet: 10.20.30.0/24 + bw-services: + name: bw-services + bw-docker: + name: bw-docker diff --git a/misc/integrations/docker.mysql.yml b/misc/integrations/docker.mysql.yml new file mode 100644 index 000000000..83e882c4b --- /dev/null +++ b/misc/integrations/docker.mysql.yml @@ -0,0 +1,65 @@ +version: "3.5" + +services: + bunkerweb: + image: bunkerity/bunkerweb:1.5.0 + ports: + - 80:8080 + - 443:8443 + labels: + - "bunkerweb.INSTANCE" + environment: + - SERVER_NAME=www.example.com + - DATABASE_URI=mysql+pymysql://bunkerweb:changeme@bw-db:3306/db # Remember to set a stronger password for the database + - API_WHITELIST_IP=127.0.0.0/8 10.20.30.0/24 + networks: + - bw-universe + - bw-services + + bw-scheduler: + image: bunkerity/bunkerweb-scheduler:1.5.0 + depends_on: + - bunkerweb + - bw-docker + environment: + - DATABASE_URI=mysql+pymysql://bunkerweb:changeme@bw-db:3306/db # Remember to set a stronger password for the database + - DOCKER_HOST=tcp://bw-docker:2375 + networks: + - bw-universe + - bw-docker + + bw-docker: + image: tecnativa/docker-socket-proxy + volumes: + - /var/run/docker.sock:/var/run/docker.sock:ro + environment: + - CONTAINERS=1 + networks: + - bw-docker + + bw-db: + image: mysql:8.0 + environment: + - MYSQL_RANDOM_ROOT_PASSWORD=yes + - MYSQL_DATABASE=db + - MYSQL_USER=bunkerweb + - MYSQL_PASSWORD=changeme # Remember to set a stronger password for the database + volumes: + - bw-data:/var/lib/mysql + networks: + - bw-docker + +volumes: + bw-data: + +networks: + bw-universe: + name: bw-universe + ipam: + driver: default + config: + - subnet: 10.20.30.0/24 + bw-services: + name: bw-services + bw-docker: + name: bw-docker diff --git a/misc/integrations/docker.postgres.ui.yml b/misc/integrations/docker.postgres.ui.yml new file mode 100644 index 000000000..338bd523a --- /dev/null +++ b/misc/integrations/docker.postgres.ui.yml @@ -0,0 +1,90 @@ +version: "3.5" + +services: + bunkerweb: + image: bunkerity/bunkerweb:1.5.0 + ports: + - 80:8080 + - 443:8443 + labels: + - "bunkerweb.INSTANCE" + environment: + - SERVER_NAME=www.example.com + - MULTISITE=yes + - DATABASE_URI=postgresql://bunkerweb:changeme@bw-db:5432/db # Remember to set a stronger password for the database + - API_WHITELIST_IP=127.0.0.0/8 10.20.30.0/24 + - DISABLE_DEFAULT_SERVER=yes + - USE_CLIENT_CACHE=yes + - USE_GZIP=yes + - www.example.com_USE_UI=yes + - www.example.com_SERVE_FILES=no + - www.example.com_USE_REVERSE_PROXY=yes + - www.example.com_REVERSE_PROXY_URL=/admin/ + - www.example.com_REVERSE_PROXY_HOST=http://bw-ui:7000 + - www.example.com_REVERSE_PROXY_HEADERS=X-Script-Name /admin + - www.example.com_INTERCEPTED_ERROR_CODES=400 401 405 413 429 500 501 502 503 504 + - www.example.com_CUSTOM_CONF_MODSEC_CRS_config=SecRule REQUEST_FILENAME "@rx /global_config$$" "id:999,ctl:ruleRemoveByTag=platform-pgsql,nolog" + networks: + - bw-universe + - bw-services + + bw-scheduler: + image: bunkerity/bunkerweb-scheduler:1.5.0 + depends_on: + - bunkerweb + - bw-docker + environment: + - DATABASE_URI=postgresql://bunkerweb:changeme@bw-db:5432/db # Remember to set a stronger password for the database + - DOCKER_HOST=tcp://bw-docker:2375 + networks: + - bw-universe + - bw-docker + + bw-docker: + image: tecnativa/docker-socket-proxy + volumes: + - /var/run/docker.sock:/var/run/docker.sock:ro + environment: + - CONTAINERS=1 + networks: + - bw-docker + + bw-ui: + image: bunkerity/bunkerweb-ui:1.5.0 + depends_on: + - bw-docker + environment: + - DATABASE_URI=postgresql://bunkerweb:changeme@bw-db:5432/db # Remember to set a stronger password for the database + - DOCKER_HOST=tcp://bw-docker:2375 + - ADMIN_USERNAME=admin + - ADMIN_PASSWORD=changeme # Remember to set a stronger password for the admin user + - ABSOLUTE_URI=http://www.example.com/changeme + networks: + - bw-universe + - bw-docker + + bw-db: + image: postgres:15.1 + environment: + - POSTGRES_USER=bunkerweb + - POSTGRES_PASSWORD=changeme # Remember to set a stronger password for the database + - POSTGRES_DB=db + volumes: + - bw-data:/var/lib/postgresql/data + networks: + - bw-docker + +volumes: + bw-data: + +networks: + bw-universe: + name: bw-universe + ipam: + driver: default + config: + - subnet: 10.20.30.0/24 + bw-services: + name: bw-services + bw-docker: + name: bw-docker diff --git a/misc/integrations/docker.postgres.yml b/misc/integrations/docker.postgres.yml new file mode 100644 index 000000000..069a76523 --- /dev/null +++ b/misc/integrations/docker.postgres.yml @@ -0,0 +1,64 @@ +version: "3.5" + +services: + bunkerweb: + image: bunkerity/bunkerweb:1.5.0 + ports: + - 80:8080 + - 443:8443 + labels: + - "bunkerweb.INSTANCE" + environment: + - SERVER_NAME=www.example.com + - DATABASE_URI=postgresql://bunkerweb:changeme@bw-db:5432/db # Remember to set a stronger password for the database + - API_WHITELIST_IP=127.0.0.0/8 10.20.30.0/24 + networks: + - bw-universe + - bw-services + + bw-scheduler: + image: bunkerity/bunkerweb-scheduler:1.5.0 + depends_on: + - bunkerweb + - bw-docker + environment: + - DATABASE_URI=postgresql://bunkerweb:changeme@bw-db:5432/db # Remember to set a stronger password for the database + - DOCKER_HOST=tcp://bw-docker:2375 + networks: + - bw-universe + - bw-docker + + bw-docker: + image: tecnativa/docker-socket-proxy + volumes: + - /var/run/docker.sock:/var/run/docker.sock:ro + environment: + - CONTAINERS=1 + networks: + - bw-docker + + bw-db: + image: postgres:15.1 + environment: + - POSTGRES_USER=bunkerweb + - POSTGRES_PASSWORD=changeme # Remember to set a stronger password for the database + - POSTGRES_DB=db + volumes: + - bw-data:/var/lib/postgresql/data + networks: + - bw-docker + +volumes: + bw-data: + +networks: + bw-universe: + name: bw-universe + ipam: + driver: default + config: + - subnet: 10.20.30.0/24 + bw-services: + name: bw-services + bw-docker: + name: bw-docker diff --git a/misc/integrations/docker.ui.yml b/misc/integrations/docker.ui.yml new file mode 100644 index 000000000..7255945f6 --- /dev/null +++ b/misc/integrations/docker.ui.yml @@ -0,0 +1,76 @@ +version: "3.5" + +services: + bunkerweb: + image: bunkerity/bunkerweb:1.5.0 + ports: + - 80:8080 + - 443:8443 + labels: + - "bunkerweb.INSTANCE" + environment: + - SERVER_NAME=www.example.com + - MULTISITE=yes + - API_WHITELIST_IP=127.0.0.0/8 10.20.30.0/24 + - www.example.com_USE_UI=yes + - www.example.com_USE_REVERSE_PROXY=yes + - www.example.com_REVERSE_PROXY_URL=/admin + - www.example.com_REVERSE_PROXY_HOST=http://bw-ui:7000 + - www.example.com_REVERSE_PROXY_HEADERS=X-Script-Name /admin + - www.example.com_INTERCEPTED_ERROR_CODES=400 401 405 413 429 500 501 502 503 504 + - www.example.com_CUSTOM_CONF_MODSEC_CRS_remove_ui_false_positives=SecRule REQUEST_FILENAME "@rx /global_config$$" "id:999,ctl:ruleRemoveByTag=platform-pgsql,nolog" + networks: + - bw-universe + - bw-services + + bw-scheduler: + image: bunkerity/bunkerweb-scheduler:1.5.0 + depends_on: + - bunkerweb + - bw-docker + volumes: + - bw-data:/data + environment: + - DOCKER_HOST=tcp://bw-docker:2375 + networks: + - bw-universe + - bw-docker + + bw-docker: + image: tecnativa/docker-socket-proxy + volumes: + - /var/run/docker.sock:/var/run/docker.sock:ro + environment: + - CONTAINERS=1 + networks: + - bw-docker + + bw-ui: + image: bunkerity/bunkerweb-ui:1.5.0 + depends_on: + - bw-docker + volumes: + - bw-data:/data + environment: + - DOCKER_HOST=tcp://bw-docker:2375 + - ADMIN_USERNAME=admin + - ADMIN_PASSWORD=admin + - ABSOLUTE_URI=http://www.example.com/admin + networks: + - bw-universe + - bw-docker + +volumes: + bw-data: + +networks: + bw-universe: + name: bw-universe + ipam: + driver: default + config: + - subnet: 10.20.30.0/24 + bw-services: + name: bw-services + bw-docker: + name: bw-docker diff --git a/misc/integrations/docker.yml b/misc/integrations/docker.yml new file mode 100644 index 000000000..7da82339e --- /dev/null +++ b/misc/integrations/docker.yml @@ -0,0 +1,53 @@ +version: "3.5" + +services: + bunkerweb: + image: bunkerity/bunkerweb:1.5.0 + ports: + - 80:8080 + - 443:8443 + labels: + - "bunkerweb.INSTANCE" + environment: + - SERVER_NAME=www.example.com + - API_WHITELIST_IP=127.0.0.0/8 10.20.30.0/24 + networks: + - bw-universe + - bw-services + + bw-scheduler: + image: bunkerity/bunkerweb-scheduler:1.5.0 + depends_on: + - bunkerweb + - bw-docker + volumes: + - bw-data:/data + environment: + - DOCKER_HOST=tcp://bw-docker:2375 + networks: + - bw-universe + - bw-docker + + bw-docker: + image: tecnativa/docker-socket-proxy + volumes: + - /var/run/docker.sock:/var/run/docker.sock:ro + environment: + - CONTAINERS=1 + networks: + - bw-docker + +volumes: + bw-data: + +networks: + bw-universe: + name: bw-universe + ipam: + driver: default + config: + - subnet: 10.20.30.0/24 + bw-services: + name: bw-services + bw-docker: + name: bw-docker diff --git a/misc/integrations/swarm.mariadb.yml b/misc/integrations/swarm.mariadb.yml new file mode 100644 index 000000000..8975a96af --- /dev/null +++ b/misc/integrations/swarm.mariadb.yml @@ -0,0 +1,99 @@ +version: "3.5" + +services: + bunkerweb: + image: bunkerity/bunkerweb:1.5.0 + ports: + - published: 80 + target: 8080 + mode: host + protocol: tcp + - published: 443 + target: 8443 + mode: host + protocol: tcp + environment: + - SERVER_NAME= + - DATABASE_URI=mariadb+pymysql://bunkerweb:changeme@bw-db:3306/db + - SWARM_MODE=yes + - MULTISITE=yes + - API_WHITELIST_IP=127.0.0.0/8 10.20.30.0/24 + networks: + - bw-universe + - bw-services + deploy: + mode: global + placement: + constraints: + - "node.role == worker" + labels: + - "bunkerweb.INSTANCE" + + bw-autoconf: + image: bunkerity/bunkerweb-autoconf:1.5.0 + environment: + - SWARM_MODE=yes + - DOCKER_HOST=tcp://bw-docker:2375 + - DATABASE_URI=mariadb+pymysql://bunkerweb:changeme@bw-db:3306/db + networks: + - bw-universe + - bw-docker + + bw-docker: + image: tecnativa/docker-socket-proxy + volumes: + - /var/run/docker.sock:/var/run/docker.sock:ro + environment: + - CONFIGS=1 + - CONTAINERS=1 + - SERVICES=1 + - SWARM=1 + - TASKS=1 + networks: + - bw-docker + deploy: + placement: + constraints: + - "node.role == manager" + + bw-scheduler: + image: bunkerity/bunkerweb-scheduler:1.5.0 + environment: + - SWARM_MODE=yes + - DOCKER_HOST=tcp://bw-docker:2375 + - DATABASE_URI=mariadb+pymysql://bunkerweb:changeme@bw-db:3306/db + networks: + - bw-universe + - bw-docker + + bw-db: + image: mariadb:10.10 + environment: + - MYSQL_RANDOM_ROOT_PASSWORD=yes + - MYSQL_DATABASE=db + - MYSQL_USER=bunkerweb + - MYSQL_PASSWORD=changeme + volumes: + - bw-data:/var/lib/mysql + networks: + - bw-docker + +volumes: + bw-data: + +networks: + bw-universe: + name: bw-universe + driver: overlay + attachable: true + ipam: + config: + - subnet: 10.20.30.0/24 + bw-services: + name: bw-services + driver: overlay + attachable: true + bw-docker: + name: bw-docker + driver: overlay + attachable: true diff --git a/misc/integrations/swarm.mysql.yml b/misc/integrations/swarm.mysql.yml new file mode 100644 index 000000000..6b70a98a1 --- /dev/null +++ b/misc/integrations/swarm.mysql.yml @@ -0,0 +1,99 @@ +version: "3.5" + +services: + bunkerweb: + image: bunkerity/bunkerweb:1.5.0 + ports: + - published: 80 + target: 8080 + mode: host + protocol: tcp + - published: 443 + target: 8443 + mode: host + protocol: tcp + environment: + - SERVER_NAME= + - DATABASE_URI=mysql+pymysql://bunkerweb:changeme@bw-db:3306/db + - SWARM_MODE=yes + - MULTISITE=yes + - API_WHITELIST_IP=127.0.0.0/8 10.20.30.0/24 + networks: + - bw-universe + - bw-services + deploy: + mode: global + placement: + constraints: + - "node.role == worker" + labels: + - "bunkerweb.INSTANCE" + + bw-autoconf: + image: bunkerity/bunkerweb-autoconf:1.5.0 + environment: + - SWARM_MODE=yes + - DOCKER_HOST=tcp://bw-docker:2375 + - DATABASE_URI=mysql+pymysql://bunkerweb:changeme@bw-db:3306/db + networks: + - bw-universe + - bw-docker + + bw-docker: + image: tecnativa/docker-socket-proxy + volumes: + - /var/run/docker.sock:/var/run/docker.sock:ro + environment: + - CONFIGS=1 + - CONTAINERS=1 + - SERVICES=1 + - SWARM=1 + - TASKS=1 + networks: + - bw-docker + deploy: + placement: + constraints: + - "node.role == manager" + + bw-scheduler: + image: bunkerity/bunkerweb-scheduler:1.5.0 + environment: + - SWARM_MODE=yes + - DOCKER_HOST=tcp://bw-docker:2375 + - DATABASE_URI=mysql+pymysql://bunkerweb:changeme@bw-db:3306/db + networks: + - bw-universe + - bw-docker + + bw-db: + image: mysql:8.0 + environment: + - MYSQL_RANDOM_ROOT_PASSWORD=yes + - MYSQL_DATABASE=db + - MYSQL_USER=bunkerweb + - MYSQL_PASSWORD=changeme + volumes: + - bw-data:/var/lib/mysql + networks: + - bw-docker + +volumes: + bw-data: + +networks: + bw-universe: + name: bw-universe + driver: overlay + attachable: true + ipam: + config: + - subnet: 10.20.30.0/24 + bw-services: + name: bw-services + driver: overlay + attachable: true + bw-docker: + name: bw-docker + driver: overlay + attachable: true diff --git a/misc/integrations/swarm.postgres.yml b/misc/integrations/swarm.postgres.yml new file mode 100644 index 000000000..005bf41c6 --- /dev/null +++ b/misc/integrations/swarm.postgres.yml @@ -0,0 +1,98 @@ +version: "3.5" + +services: + bunkerweb: + image: bunkerity/bunkerweb:1.5.0 + ports: + - published: 80 + target: 8080 + mode: host + protocol: tcp + - published: 443 + target: 8443 + mode: host + protocol: tcp + environment: + - SERVER_NAME= + - DATABASE_URI=postgresql://bunkerweb:changeme@bw-db:5432/db + - SWARM_MODE=yes + - MULTISITE=yes + - API_WHITELIST_IP=127.0.0.0/8 10.20.30.0/24 + networks: + - bw-universe + - bw-services + deploy: + mode: global + placement: + constraints: + - "node.role == worker" + labels: + - "bunkerweb.INSTANCE" + + bw-autoconf: + image: bunkerity/bunkerweb-autoconf:1.5.0 + environment: + - SWARM_MODE=yes + - DOCKER_HOST=tcp://bw-docker:2375 + - DATABASE_URI=postgresql://bunkerweb:changeme@bw-db:5432/db + networks: + - bw-universe + - bw-docker + + bw-docker: + image: tecnativa/docker-socket-proxy + volumes: + - /var/run/docker.sock:/var/run/docker.sock:ro + environment: + - CONFIGS=1 + - CONTAINERS=1 + - SERVICES=1 + - SWARM=1 + - TASKS=1 + networks: + - bw-docker + deploy: + placement: + constraints: + - "node.role == manager" + + bw-scheduler: + image: bunkerity/bunkerweb-scheduler:1.5.0 + environment: + - SWARM_MODE=yes + - DOCKER_HOST=tcp://bw-docker:2375 + - DATABASE_URI=postgresql://bunkerweb:changeme@bw-db:5432/db + networks: + - bw-universe + - bw-docker + + bw-db: + image: postgres:15.1 + environment: + - POSTGRES_USER=bunkerweb + - POSTGRES_PASSWORD=changeme + - POSTGRES_DB=db + volumes: + - bw-data:/var/lib/postgresql/data + networks: + - bw-docker + +volumes: + bw-data: + +networks: + bw-universe: + name: bw-universe + driver: overlay + attachable: true + ipam: + config: + - subnet: 10.20.30.0/24 + bw-services: + name: bw-services + driver: overlay + attachable: true + bw-docker: + name: bw-docker + driver: overlay + attachable: true