Sign inSign up

aidik/nginx-full-brotli

By aidik

•Updated 2 months ago

Minimal Debian trixie-slim image with nginx-full and Debian Brotli modules, no custom compilation.

Image
Web servers
0

922

aidik/nginx-full-brotli repository overview

aidik/nginx-full-brotli is a minimal Docker image that combines:

  • debian:trixie-slim as the base
  • Debian’s nginx-full package
  • Debian’s Brotli modules: libnginx-mod-http-brotli-static and libnginx-mod-http-brotli-filter

The goal is to provide a stock Debian nginx with Brotli support (on‑the‑fly and static), using only official Debian packages and no custom nginx builds.

⁠What you get
  • Stock nginx binary from Debian’s nginx-full package
  • Brotli compression support via Debian’s Brotli modules
  • Standard Debian nginx layout under /etc/nginx
  • Logs wired to Docker:
    • /var/log/nginx/access.log → stdout
    • /var/log/nginx/error.log → stderr

There are no extra modules, patches, or custom compilation steps. All updates and security fixes come through Debian.

⁠Usage

Basic run (default nginx page):

docker run --rm -p 8080:80 aidik/nginx-full-brotli

With a custom nginx.conf:

docker run --rm -p 80:80 \
  -v $(pwd)/nginx.conf:/etc/nginx/nginx.conf:ro \
  aidik/nginx-full-brotli

With a conf.d directory:

docker run --rm -p 80:80 \
  -v $(pwd)/conf.d:/etc/nginx/conf.d:ro \
  aidik/nginx-full-brotli

As a base image:

FROM aidik/nginx-full-brotli

COPY nginx.conf /etc/nginx/nginx.conf
COPY conf.d/*.conf /etc/nginx/conf.d/
COPY html/ /usr/share/nginx/html/
⁠Enabling Brotli

The Brotli modules are installed but not automatically enabled. In your nginx configuration:

  1. Load the modules (if not already loaded by Debian’s includes):
load_module modules/ngx_http_brotli_filter_module.so;
load_module modules/ngx_http_brotli_static_module.so;
  1. Configure Brotli in the http block:
brotli on;
brotli_static on;
brotli_comp_level 6;
brotli_types text/plain text/css text/javascript application/javascript application/json application/xml image/svg+xml;
  1. Reload nginx:
nginx -t && nginx -s reload

You can verify Brotli is in use with:

curl -s -I -H 'Accept-Encoding: br,gzip' http://your-nginx/ | grep -i content-encoding
⁠Tags
  • latest – current build on Debian trixie
  • trixie – explicitly pinned to Debian trixie

Images are built automatically:

  • On every push to main
  • On manual trigger
  • Weekly via scheduled workflow
⁠Scope and limitations
  • Built entirely from Debian packages (nginx-full and libnginx-mod-http-brotli-*)
  • No default Brotli configuration; you must enable and tune it for your workloads
  • No TLS certificates bundled; provide your own via volumes or derived images
  • Intentionally a building block, not an all‑in‑one reverse proxy stack

Tag summary

Content type

Image

Digest

sha256:86acb952d…

Size

33.3 MB

Last updated

2 months ago

docker pull aidik/nginx-full-brotli