### Run Full Stack Development Instance Source: https://github.com/bunkerity/bunkerweb/blob/master/CLAUDE.md Use this command to start the full stack development environment including the UI and API. This is the recommended setup for most development tasks. ```bash docker compose -f misc/dev/docker-compose.ui.api.yml up -d ``` -------------------------------- ### Example Dependency with Hashes Source: https://github.com/bunkerity/bunkerweb/blob/master/src/api/requirements.txt This example shows a dependency 'regex' with its version and multiple SHA256 hashes. Including hashes ensures that the installed package matches the specified checksums, preventing supply chain attacks. ```bash regex==2026.6.28 \ --hash=sha256:03376d60b6a11aecb88a79fa2be06b40faa01c6693bc31ef69435cd4818b9463 \ --hash=sha256:0ab0d5344311fc8e8667078942056c3b9c9b4a4b1cc99f2eb8a5af54554f4acc \ --hash=sha256:0c31665c0deb5c111557a1cac8c27bd5629e2f9e7fd5058900a03576c33b601c \ --hash=sha256:0e6cb5a61486f9062397d2e189573b39d38ecfaed698fd9fb6e2756a8ebb8762 \ --hash=sha256:0f09f62e450cc2f113018cc8412aeea3a120a04e1ca7e801a0d441583f9a3b06 \ --hash=sha256:11251768cc23f097dd61b18f67966e70f74da822784d17e12a444eb6b29d4288 \ --hash=sha256:1484bdd6fba28422df9b5ebb04055b2e1b680e8e4f08490bb21ff0f3cc50d0ab \ --hash=sha256:17c077586770f67e05bbffeba07fbee6b2b22244f4d4caf8d94e59d574befe04 \ --hash=sha256:17eddca4e8ea9af0b5739314776cdf0172a49731ab61f2e1ea66e066ddd46c97 \ --hash=sha256:189dbf9fc4252d9f1352bf4bd1bef885edb6cc4b7341df202a65f821aaa3891c \ --hash=sha256:1e164ace4dbab5c6ad4a4ac7c41a2638fe226d0c770a86f2eb041f594bac6ee7 \ --hash=sha256:1e693940a3b9e6d6e4dc2a54ecaa74b74934f77af1ef95f518a74261ef7cc1bc \ --hash=sha256:2097591101d70bcc108af64c46f6066bb698ee067fec5f75beac0be317639311 \ --hash=sha256:20f4d87702702aa1d572721e146f301660c50eef6fd6cb596e48a22b0ace17db \ --hash=sha256:234a51e20ebc18ab83b2c0600cf28f2e884560a0e00f743878f0b7d8e7c4cf03 \ --hash=sha256:23f7e0cc60c72486b42a685f1ff4eec90d50d4fb05e4f9c7d5363b03aa02600d \ --hash=sha256:28f9e6c28f9b90f6f784595a33240a57e181e61b6ee3dc259b25c61e356d1aa3 \ --hash=sha256:2e27727fba075f1e4409416d2f537d4c30fc11f012ea507f7bd74d3e19ecb57a \ --hash=sha256:3169a3159e4d99d9ae85ff0ed90ef3b8906cc3152653b6078b842ace6c8f72c3 ``` -------------------------------- ### Example User-Agent Whitelist File Format Source: https://github.com/bunkerity/bunkerweb/blob/master/src/common/core/whitelist/README.md Example content for a local User-Agent whitelist file. Supports PCRE patterns. Each entry must be on a new line, and comments start with '#'. ```text # /etc/bunkerweb/lists/ua-whitelist.txt (?:^|\s)FriendlyScanner(?:\s|$) TrustedMonitor/\d+\.\d+ ``` -------------------------------- ### Install Build Prerequisites Source: https://github.com/bunkerity/bunkerweb/blob/master/BUILD.md Installs all necessary packages and tools required to build the FreeBSD package. This command should be run as root. ```bash pkg bootstrap -f pkg update -f pkg install -y bash git wget curl gtar pigz gmake pkgconf autoconf automake libtool \ rust ruby rubygem-fpm nginx sudo lsof unzip openssl sqlite3 pcre2 lmdb ssdeep \ libxml2 yajl libgd libmaxminddb libffi python311 py311-pip py311-setuptools \ py311-wheel py311-sqlite3 postgresql18-client ``` -------------------------------- ### BunkerWeb Configuration Example Source: https://github.com/bunkerity/bunkerweb/blob/master/README.md A sample configuration file demonstrating various settings for BunkerWeb. Use this as a template for your own configurations. ```conf SERVER_NAME=www.example.com AUTO_LETS_ENCRYPT=yes USE_ANTIBOT=captcha REFERRER_POLICY=no-referrer USE_MODSECURITY=no USE_GZIP=yes USE_BROTLI=no ``` -------------------------------- ### Initialize Dependencies Source: https://github.com/bunkerity/bunkerweb/blob/master/BUILD.md Initializes dependency sources required for the build process. Run this before installing build prerequisites. ```bash bash src/deps/init_deps.sh ``` -------------------------------- ### Start BunkerWeb MCP Stack Source: https://github.com/bunkerity/bunkerweb/blob/master/examples/mcp-stack/CLAUDE.md Launches the BunkerWeb MCP stack using Docker Compose. Ensure Docker is installed and running. ```bash docker compose up -d ``` -------------------------------- ### Install package_cloud CLI for Fedora/RHEL Source: https://github.com/bunkerity/bunkerweb/blob/master/BUILD.md Installs the necessary Ruby environment and the package_cloud CLI for Fedora and RHEL-based systems. ```sh # Fedora/RHEL sudo dnf install -y ruby rubygems నేను sudo gem install package_cloud ``` -------------------------------- ### URL Schemes Example Source: https://github.com/bunkerity/bunkerweb/blob/master/src/common/core/modsecurity/files/coreruleset-v4/CONTRIBUTING.md Illustrates a simple list of URL schemes. ```regex mailto|mms|mumble|maven ``` -------------------------------- ### Example Dependency with SHA256 Hashes Source: https://github.com/bunkerity/bunkerweb/blob/master/src/api/requirements.txt This section lists example SHA256 hashes for a dependency. These hashes are used by pip to verify the integrity of downloaded packages, preventing the installation of tampered files. ```bash --hash=sha256:10d86db20695afe7997ac9e1717637d6714a8d0220458c33f3d2061f54cec427 --hash=sha256:11743adfa510bfffebe97659fb280182b5c9b238708f667e866f308c3430dc19 --hash=sha256:1bc6195825b7dcd217968bb1f801a60fd4c16e8eeab5bedc7fe917d7d5995ab4 --hash=sha256:204f299afcbd65918ab78dbc52626b0ae45e9d8cef403fdbf33ecf9e40eac66e --hash=sha256:20aa0e708b920bde876a4aa82dc7dd6ebea228a63a67cda6632c2fc87b787efa --hash=sha256:23282a321c8baf9b3a3c4afff673f9fe65eb7fdc2338d765ccad9d3d1916a5ba --hash=sha256:24b2405c0a46738dd9e1cf7135aa5dbdb9d42d024628651b3b13d5117e99f8df --hash=sha256:2581a94056e55d7d0a31a823ea92bf73749c489ca2285bfdc0fbe6b2bb49d50c --hash=sha256:2995c176de7692b86a2e4c58d9ec718f753150a979cb4a754e2b4ffa38e70906 --hash=sha256:2b37d10b5a63bd4d87e18472d80fa525bd670586fae62e5dd580452764879b65 --hash=sha256:2cb93af48550faf1cea04c303107c8b75833de7013e57ce27d3b8d21d8d0f58c --hash=sha256:2d95ddc1eb6914154253d239089900813f6a767e174b8e6a50e7fdacb7e4236c --hash=sha256:3416ff151bb6b5a8d8d11664974fbef4d9305b9b2957839ab5a270468fd8df30 --hash=sha256:3651aa7058595e9cfb75d35dd5ada2bf9f48a5b8a0f3562821d3e210c507e077 --hash=sha256:37a6721cdf3f65dbb13aa9503510ccb4451603ac837e44d265d7992a597e1374 --hash=sha256:41bc1199f7523b3f82843c88cbb979180c949caef0342cf90968f178e5d49b01 --hash=sha256:43d818978d06062d9b22c4fab2ebe44cf5213d42dc8e62bda8c2760cfa2eeb33 --hash=sha256:4429f3b105524a10b72c3a819b091c495d2811d419c1e1e8df773a5a5974f831 --hash=sha256:4543579a9bdb0c9560039b4ffddbdb39545707659fbc430ce4c10f3f68d557f9 --hash=sha256:4674d49eb94706dfe666c069fc0a1b646ffcf920473492e209f6d5f60d3f0cc2 --hash=sha256:4c887eba18b7945ac73067a8b4a66f21cd46c2539b2bc68588f7be6c7eb6d26b --hash=sha256:4e4ff8e37f99cf1da89e255e07c9c4b37c214038c4283707bdec308cb1b0ea1f --hash=sha256:4f34e26a19f91f710c08e0183429f0d1d15df734e6bc78c31e77b9ea9c433658 --hash=sha256:5327989a465505f05cfe06f04fa9d0c2fd5432bb243e10e6f012b1bdca3c8579 --hash=sha256:53b2290c92e0506d102cd448fbc610d87079553f86caa39d67440856a8b8bba5 --hash=sha256:56d8641cf834c2836922899105bd3ce3d0dfc69291d52edf0b4d0436829b34c0 --hash=sha256:57a2d9fa4fb4c2ecae57b13dfff2c7ab53e21a2ba674fe9f05506680fcdcc0d7 --hash=sha256:63ac26eefbf4af1741247d6fb68b11c49a25b2f7413fbd318a83a12aaa9cf666 --hash=sha256:6543cf55d170003296d185c0af981f3e1311564907e1f4e08671fc7693a890a5 --hash=sha256:704fd259e332e01f9b9c178f4bce9e49027e5587cc2600eeeaf8e76e1c846201 --hash=sha256:71283b39fd17e5408eb123bd37aeecfd9d54c81fc184421943208aadb879d103 --hash=sha256:71cd71740ed2c15211ebb237ced4e39a1cdf6f80566e5fe95428da1626f4fde6 --hash=sha256:7571e4464cb6e434958f867f7f730b8ab0b75e3f8e5eac0499168486ab3c33a8 --hash=sha256:772b80df316480d894a0e3165fdd19cf77f5d17f9a787f94029465ad0e3529d1 --hash=sha256:77a0feab9af4c021c581f695258c642b3d10c5fd4c676e33a0d8606425d82631 --hash=sha256:7a2cffd17d27d2ecbb310c2b1d8174f222a5495b1a721894afa88ec11e25b898 --hash=sha256:7a7ce236284f002a156f70add88efe5c70879cccbb658be0822c54b1306fc09d --hash=sha256:7ba0480b9a74af058f43b337e937a451e109295c420916d68ad24e3dc02f5e44 --hash=sha256:8520a4ab0e37f770afc34459c4f8f7019e153f9124dc101c15538365875d1ab2 --hash=sha256:86bc13c25a8d1fcd70b51d0ce7c9b65e90de5666fcbfd3e34957cc73ee19aeb5 --hash=sha256:89d8c2394a065ca86f5d2910ff263ae67c127e1376ccc4f9fc35c71db879f80a --hash=sha256:8c520725602756229f045b032a1ff33d7ef0f7404189d62f6c2438cb6d8ef6a1 --hash=sha256:8f200104103feb097de4cab8fe4f5dd18a2026934c7dea98c55a2f5fd6d5a33b --hash=sha256:8f70d8b291ef6e88d19b1f297a6905ddb978888d9272b0d05e6f53309856bcfc --hash=sha256:8fa585ede612ee9f9e91b18bebf9ba11b9ae29a4e3a0d0cf6fca3e382133f0d5 --hash=sha256:922c0e019fe68b3ae392965a766b02a71ba1168c932cebc3733cd52c5fe5b377 --hash=sha256:9342472aff9b093c5acd4f6d8f70ae0937964ab56542502bcf5579782da69ae8 --hash=sha256:9649193aa27bd9ff2e80ff29bfaa93085496c7a3a377592823cc58b77ee88add --hash=sha256:9f04b092229ad2c50126dd3c922c8822e51e605993764a33058d4a791ab42281 --hash=sha256:a0f27f01bee51861392bb6b7c4fdb290b27d1eb194e9e28788d68102a0e898d9 --hash=sha256:a16ffe19bf5cf9f5edaa1ad1dd830c5a816e8feec430c522302ab55483a4b994 --hash=sha256:a204794696ffb8f9b10fba6f7cb5216d42f3b2b71860ccac6b6e42f5f10973b0 --hash=sha256:a711b51aec4370d0dcda5b6c09463206f133a5759341d7744b953a7b62e1100e --hash=sha256:a88fc94e647bc4eec523f1caa540258eb71d14278b9daf72fa1e2658a98df0f0 --hash=sha256:ae99b14c5f21e026e0e9d96f40e07d8570ebee6cafd9d8fc318354606daa7a28 --hash=sha256:b0ef001f8c25ad0fa9529f914c1600647ecd0f542d11c19b7894768c67b6acb7 --hash=sha256:b141a4891c995a039cd89e9a49e62df1dc8a559a5d1a6e4c7106d16c12777a55 ``` -------------------------------- ### Example IP Whitelist File Format Source: https://github.com/bunkerity/bunkerweb/blob/master/src/common/core/whitelist/README.md Example content for a local IP whitelist file. Supports IPv4/IPv6 addresses and CIDR networks. Each entry must be on a new line. ```text # /etc/bunkerweb/lists/ip-whitelist.txt 192.0.2.10 198.51.100.0/24 ``` -------------------------------- ### Install BunkerWeb Package Source: https://github.com/bunkerity/bunkerweb/blob/master/BUILD.md Installs the BunkerWeb package on the production system after its runtime dependencies have been met. ```bash pkg install -y ./bunkerweb-.pkg ``` -------------------------------- ### Install package_cloud CLI for Debian/Ubuntu Source: https://github.com/bunkerity/bunkerweb/blob/master/BUILD.md Installs the necessary Ruby environment and the package_cloud CLI for Debian and Ubuntu systems. ```sh # Debian/Ubuntu sudo apt-get update sudo apt-get install -y ruby-full build-essential sudo gem install package_cloud ``` -------------------------------- ### Optimized URL Schemes Example Source: https://github.com/bunkerity/bunkerweb/blob/master/src/common/core/modsecurity/files/coreruleset-v4/CONTRIBUTING.md Shows an optimized version of URL schemes, reducing backtracking steps. ```regex m(?:a(?:ilto|ven)|umble|ms) ``` -------------------------------- ### Example User-Agent Greylist File Format Source: https://github.com/bunkerity/bunkerweb/blob/master/src/common/core/greylist/README.md Shows the format for a User-Agent greylist file, using PCRE patterns. ```text # /etc/bunkerweb/lists/ua-greylist.txt (?:^|\s)FriendlyScanner(?:\s|$) TrustedMonitor/\d+\.\d+ ``` -------------------------------- ### Basic Production Setup Source: https://github.com/bunkerity/bunkerweb/blob/master/src/common/README.md A standard configuration for a production site with strict security. Use 'block' mode for production to prevent malicious requests. ```yaml SECURITY_MODE: "block" SERVER_NAME: "example.com" LOG_LEVEL: "notice" ``` -------------------------------- ### Install Runtime Dependencies Source: https://github.com/bunkerity/bunkerweb/blob/master/BUILD.md Installs the runtime dependencies required for the BunkerWeb package on a production system. Note that compiler toolchains are not required at runtime. ```bash pkg install -y bash nginx python311 py311-sqlite3 curl libxml2 yajl libgd \ sudo lsof libmaxminddb libffi openssl sqlite3 unzip pcre2 lmdb ssdeep ``` -------------------------------- ### SecMarker Formatting Example Source: https://github.com/bunkerity/bunkerweb/blob/master/src/common/core/modsecurity/files/coreruleset-v4/CONTRIBUTING.md Shows the required format for SecMarker directives. Use double quotes, uppercase, and hyphens to separate words. ```modsecurity SecMarker "END-RESPONSE-959-BLOCKING-EVALUATION" SecMarker "END-REQUEST-910-IP-REPUTATION" ``` -------------------------------- ### Example IP Greylist File Format Source: https://github.com/bunkerity/bunkerweb/blob/master/src/common/core/greylist/README.md Demonstrates the expected format for an IP greylist file, including IPv4/IPv6 addresses and CIDR networks. ```text # /etc/bunkerweb/lists/ip-greylist.txt 192.0.2.10 198.51.100.0/24 ``` -------------------------------- ### Example SHA256 Hashes Source: https://github.com/bunkerity/bunkerweb/blob/master/src/autoconf/requirements.txt These are example SHA256 hashes generated by pip-compile for dependency verification. They ensure the integrity and authenticity of installed packages. ```bash --hash=sha256:672ac254412a24d0d0cf00a9e6c238877e4be5e5fa2d188832c1244f45f31966 \ --hash=sha256:672b9d65f42eb877f5c3f234a4547e4e1a226ca8c2eed879bb34670a0ce51192 \ --hash=sha256:686b6c0d3911ec387b444ddf5dc62fb7f7c0a7d5186a7861626496a5ab4aff95 \ --hash=sha256:6f71173be42d3241d428f760122febb748de0623f44308a6f120d0dd9ec572e3 \ --hash=sha256:6fd35beba67c4183b09375c5fff9accb47524191a244a99f95fd4472f5402c2b \ --hash=sha256:6ffbb2f4ec1ceaff7e07d43922954da26b223d188bf30658e561b98e23089444 \ --hash=sha256:73f05ea02013e02512c3bf42714f1208c57168c779cc6fe23516e4543089d0a6 \ --hash=sha256:764457a7be60825fb770a644852ff717bcbb5042f189f2bd16df61a81b3f6573 \ --hash=sha256:797457503c2d426bee06eef808d07b31ede30b65e054444e7de64cad0061b7af \ --hash=sha256:7c106c26852ca1c2047c6b80384f17100b4e439af276f21ef3d4e2f450ae7e15 \ --hash=sha256:7fb4bdf95b0561a79f259f9d28fbc109728c5ee7f27aff6391f0ca703a329abe \ --hash=sha256:819c054312f1af92947e6a55883d1b66feefab11531a7fc45e0fb9b63880b5c2 \ --hash=sha256:8560b4d712474335d08907db7973f71912d3a9a8f1dee992ec06b5d2fe359496 \ --hash=sha256:86a6dab78b0e43e2897a3bbe15745aa60dc5423ca437b7b0b164c069bf91b876 \ --hash=sha256:87a5eea1b2a5e21e1ebdbb33ad4165359189327e63fc4e4894693e7f821ac817 \ --hash=sha256:896e12dfdbbab9d8f7e16d2b28c6769a60126fa92095d1ebf9473d02593a2448 \ --hash=sha256:8f6bb621e5863cfe8fe5ff5468002d200ec31f30f1280b259dc505b02595099e \ --hash=sha256:90d53f1609c29ccc2193945ef732428382a28f78d0456ae4d3daf0d48b74f0f6 \ --hash=sha256:915fbb7b41b115192259f8c9ae58f3ddc444d2b5579917270211858e606a4afd \ --hash=sha256:93b032b5ec3255473c143627d21a69ac74ae12f7f33974cb587c564d11b1066f \ --hash=sha256:94da27378da0610e341c4d30de29a191672683cc82b8f9556e8f7c7212a020fe \ --hash=sha256:979ed4717f59b8bb12e3963378fa285d93d367e15bcd66c721311826d3c44a6c \ --hash=sha256:97e704dcd26271f5bda3fa07c3ce0fb76d6d3f8659f4baa1a24442cc9ba177ca \ --hash=sha256:99abd37084b82f5830c635fddd0b4993b9742a66eb746dacf433c8590e8f9e3c \ --hash=sha256:9af6779bfb46abf124068327abcdf9ce95c9ef8287a3e8da76ccf2d0f16c28fa \ --hash=sha256:9e8f2d660c350b3d0e259c7a7e3d9b7fc8b41210cbcc3d4a7076ff0a5e5c2fdc \ --hash=sha256:a24f677ebe83749039e7bdf862ff0bbb16818ae4193d4ef96505e269375bcce0 \ --hash=sha256:a9875b46d910cff3ea2f5962f9d266b465459fe634e22556ab9bd6fc1192eea0 \ --hash=sha256:aa00140699487bd435fde4342d85c94cb256b7cd3a5b9c3396c67f19922afda2 \ --hash=sha256:ae6be797afdef264e8a84864a85b196ca06045586481b3df8a967322fd2fa844 \ --hash=sha256:af8b4b81a960eeaf1234971ac3cd0ba5901f3cd42eae42a46b4d089a8b492719 \ --hash=sha256:b165790117eea512d7f3fb22f1f6dad3d55a7189571993eb015591c1401276d1 \ --hash=sha256:b238af795833d5731d049d82bc84b768ae6f8f97f0495963b3ed9935c5901cc3 \ --hash=sha256:b3a03285a7f9c7b016324574a6d92a1c895da6b978cb8f1deee3ac72bc6da178 \ --hash=sha256:b6feea921016eb3d4e04d65fc4e9ca402d1a3801f562aef94989f54694917af3 \ --hash=sha256:b6ff7fcee63287ae57b5df3e4f5957ce032122802509246dec1a5bcc55904c95 \ --hash=sha256:b821a1f7dedf7e37450654e620038ac3b2e81e8fa6ea269337e97101978ec730 \ --hash=sha256:bb2c0c80d431c0d03f2c7dbf125150fedd4f0de17366a7ca33f7ccb822391842 \ --hash=sha256:bb33777ea21e8b7ecde0e6fc84f598be0a1192eab1a63bc746d75aa75d38e7bd \ --hash=sha256:bcfb80a2cc36fba2534e5e5b5264dc7ae6fcd9bf15256da3e53d2f499e6fa29d \ --hash=sha256:bd869c427324e5cb15195793de951295710db28be7d818247f3097b4ab5d4b96 \ --hash=sha256:bedb0cd073cc2dc035e30aeb99444389d3cd2113afe4ef9fcd23d439f5bade85 \ --hash=sha256:c389c482a7e9b9dc3ee2701ac46c4125297a3818875b9c305ddb603c04828fd1 \ --hash=sha256:c6fa4dc7ad6f8109c70bb1499e589f76b0b792baf39f9b017eb92c8a81d0a199 \ --hash=sha256:c83afe0ba876be7e943d2e0ba645809ad441575d2840c895c21ee5de93b9377a \ --hash=sha256:cb21957bb8aca671c1765e32f58164cf0c50e6bf41c0bbbd16da20732ecaf588 \ --hash=sha256:cf4491381b1b57425c315a56a439251b1bdac07b2275f19a8c44bc57744532ec \ --hash=sha256:d03f281ed22579314ba00821ce20115a7c0ac430660b4cc05704a3f818b3e004 \ --hash=sha256:d35143e27778b4bb0fb189562d7f275bff79c62ab8e98459717c0ea617ff2480 \ --hash=sha256:d3b1a184a9a8f548a6b73f1e26b96b052193e4b3175ed7342aaf1151a1f00a04 \ --hash=sha256:d44ec478e713ee7f29b439f7eb8dc2b9d4079e11ae114d2c2ac3d5daf30516c8 \ --hash=sha256:d9d4e294455b23a68c9b8f042d0e8e377a265bcb15332753695f6e5b6819e0ce \ --hash=sha256:de538791a80e5d862addbc183f70f0158ac9b9bb872bb147f1fd2a683691e087 \ --hash=sha256:e4e5e0ae56914ecdbf446493addefc0159053dd53962cef37d7839f37f73d505 \ --hash=sha256:e509a55f681e6158c20f70f102f9cf61fb20fbc382272bc6d94b7343f2582780 \ --hash=sha256:ec8dc383ee57ea3e883477dcca3f11b65d58199f1080acaf4cd6ad9a99698be4 \ --hash=sha256:ed09c7eb1c391271c2ed0314a51903e72a3acb653d5ccfc264cdf3ef11f8269d ``` -------------------------------- ### Serve Documentation Locally Source: https://github.com/bunkerity/bunkerweb/blob/master/AGENTS.md Regenerate and serve the project documentation locally for preview. ```bash mkdocs serve --watch ``` -------------------------------- ### Rename CRS Setup Configuration Source: https://github.com/bunkerity/bunkerweb/blob/master/src/common/core/modsecurity/files/coreruleset-v4/INSTALL.md After extracting the CRS files, rename the example setup configuration file to its active name. This makes it the primary configuration file for CRS. ```bash cd /etc/crs4 mv crs-setup.conf.example crs-setup.conf ``` -------------------------------- ### Build .deb Package (Ubuntu Example) Source: https://github.com/bunkerity/bunkerweb/blob/master/BUILD.md Builds a Docker image for Ubuntu and then runs it to generate a .deb package. The generated package is exported to a host directory. ```sh docker build \ -t bunkerweb_ubuntu \ -f src/linux/Dockerfile-ubuntu . && \ docker run --rm \ -v "$(pwd)/out/deb:/data" \ bunkerweb_ubuntu ``` -------------------------------- ### Build Appliance Image Source: https://github.com/bunkerity/bunkerweb/blob/master/AGENTS.md Build a full appliance Docker image. ```bash docker build -f src/all-in-one/Dockerfile . ```