From e4bf63cf8944edf7422a9968331bd554169dc5b3 Mon Sep 17 00:00:00 2001 From: Andrey Antukh Date: Wed, 7 Oct 2026 13:28:34 +0000 Subject: [PATCH] :wrench: Point the devenv exporter at nginx and drop the old route The worker reaches the backend through `internal-uri`, which fell back to the host-side public URI (unreachable from inside the container), so every poller turn died on `fetch failed`. The devenv now defines `PENPOT_INTERNAL_URI=http://localhost:4449`: nginx is the outermost platform layer (Caddy only emulates the external HTTPS), and no service goes outside to come back in. The stale `/api/export` location, which pointed at the deleted exporter HTTP port, goes away with it. AI-assisted-by: glm-5.3-flash --- docker/devenv/defaults.env | 7 +++++++ docker/devenv/files/nginx.conf | 4 ---- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/docker/devenv/defaults.env b/docker/devenv/defaults.env index 7f9c107494..efae883c50 100644 --- a/docker/devenv/defaults.env +++ b/docker/devenv/defaults.env @@ -23,6 +23,13 @@ PENPOT_USER_DATA_VOLUME=penpotdev_user_data # database number (0 for ws0, 1 for ws1, ...) set by instance-env-overrides. PENPOT_HOST=devenv PENPOT_PUBLIC_URI=https://localhost:3449 +# In-container address of the platform edge (nginx), used to reach the +# backend without leaving through the public URI (which is host-side and +# unreachable from inside the container). Caddy only emulates the external +# HTTPS layer; no service goes outside to come back in. The exporter worker +# uses it for the management API; per-container loopback, so ws1+ overrides +# never touch it. +PENPOT_INTERNAL_URI=http://localhost:4449 PENPOT_DATABASE_URI=postgresql://postgres/penpot PENPOT_DATABASE_USERNAME=penpot PENPOT_DATABASE_PASSWORD=penpot diff --git a/docker/devenv/files/nginx.conf b/docker/devenv/files/nginx.conf index 5a0a81f091..1b9f3173ee 100644 --- a/docker/devenv/files/nginx.conf +++ b/docker/devenv/files/nginx.conf @@ -137,10 +137,6 @@ http { } # On production, this is controlled by ELB - location /api/export { - proxy_pass http://127.0.0.1:6061; - } - location /api { proxy_pass http://127.0.0.1:6060/api; proxy_http_version 1.1;