All checks were successful
Build and publish / build (push) Successful in 20s
## Summary - Add `nginx.conf.template` with full routing: admin/CMS surfaces → `cms:5555`, uploads → `cms:5555` (cached), `/api` → `shop:9999` (no cache), `/` → `shop:9999` (cached) - Update `docker-entrypoint.sh` to render template via `envsubst` at startup; skip if adapter has already mounted its own config - Update `Dockerfile` to `COPY nginx.conf.template` into image - Bump CHANGELOG to v0.1.1 ## Test plan - [ ] Build image locally: `docker build -t libreshop/nginx:test libreshop/nginx/` - [ ] Smoke test white-label default: no env overrides → confirm rendered `/etc/nginx/nginx.conf` contains `cms:5555` and `shop:9999` - [ ] Smoke test env override: `NGINX_UPSTREAM_SHOP=shop:8080` → confirm substitution - [ ] Smoke test adapter override: mount custom `nginx.conf` via compose `configs:` → confirm "adapter-provided nginx.conf detected" log line - [ ] Deploy libreshop/demo with `nginx:v0.1.1` → confirm `/admin` returns 200 Closes #1 Co-authored-by: Michael Czechowski <michael.c@re-cinq.com> Reviewed-on: #2
1.3 KiB
1.3 KiB
Changelog
All notable changes to libreshop/nginx are documented here.
v0.1.1 (Unreleased)
Added
- Default white-label
nginx.confbaked into the image. Routes the standard libreshop surface out of the box:/admin,/upload,/content-manager,/content-type-builder,/i18n,/email,/user-permissions,/users-permissions,/documentation,/plugins,/uploads→${NGINX_UPSTREAM_CMS:-cms:5555};/apiand/→${NGINX_UPSTREAM_SHOP:-shop:9999}. Cache zones, X-Forwarded headers, and a/healthendpoint included. docker-entrypoint.shenvsubst pass overnginx.conf.templateat startup withNGINX_UPSTREAM_SHOP,NGINX_UPSTREAM_CMS,NGINX_CACHE_LIFETIME(default1h).- Adapter-override detection: if
/etc/nginx/nginx.confwas replaced via composeconfigs:(i.e. doesn't carry the stock nginxworker_processes auto;line), the entrypoint leaves it untouched.
Why
libreshop/demo standalone preview returned 404 on /admin because the image had no default routing. Adapters like mp work fine because they mount their own nginx.conf, but the toolkit must be runnable without an adapter.
Unreleased
- Extracted from
mp/nginx/(2026-04-29). The component history before the extraction lives in themuellerprintsrepository.