# Hot Module Replacement mit Nginx in Docker

**URL:** <https://forum.shopware.com/t/hot-module-replacement-mit-nginx-in-docker/97102>\
**Category:** Shopware 6 (German)\
**Tags:** general, programming, themes--design\
**Created:** [15. November 2022 um 09:37 UTC](https://forum.shopware.com/t/hot-module-replacement-mit-nginx-in-docker/97102 "2022-11-15T09:37:59Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![f.brandl](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/f.brandl/32/13047_2.png) [@f.brandl](https://forum.shopware.com/u/f.brandl)\
**Post date:** [15. November 2022 um 09:38 UTC](https://forum.shopware.com/t/hot-module-replacement-mit-nginx-in-docker/97102/1 "2022-11-15T09:38:00Z")

</div>

Hallo Shopware-Gemeinschaft,

ich habe ein Docker-Setup laufen mit Nginx, PHP-FPM, Datenbank und weiterem Stuff, der hier nicht von Bedeutung sein sollte.  
Funktioniert alles soweit tadellos.

Möchte ich nun das HMR nutzen, wird mir im Browser ein **502 Bad Gateway** Fehler ausgeworfen. Nginx meldet

```auto
naturanum_nginx | 2022/11/15 09:29:16 [error] 190#190: *216 upstream prematurely closed connection while reading response header from upstream, client: 172.31.0.1, server: , request: "GET / HTTP/2.0", upstream: "http://172.31.0.7:9998/", host: "localhost:9998"
naturanum_nginx | 172.31.0.1 - - [15/Nov/2022:09:29:16 +0000] "GET / HTTP/2.0" 502 559 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/102.0.0.0 Safari/537.36" "-"

```

und der Watcher sagt

```auto
Rejecting request "GET localhost/" on proxy server for "localhost:9998"

```

**Was habe ich bereits gemacht**

Im nginx-Container sind die Ports **9998** und **9999** freigegeben. Die nginx-Config ist so konfiguriert, dass Anfragen an diese Ports durchgeleitet werden an den App-Container, auf welchem der Watcher läuft:

```auto
server {
    listen 9998 ssl http2 default_server;
    #listen 9998 default_server;

    ssl_certificate /etc/nginx/certs/server.crt;
    ssl_certificate_key /etc/nginx/certs/server.key;

    location / {
        proxy_pass http://naturanum_app:9998;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
    }
}

server {
    listen 9999 ssl http2 default_server;

    ssl_certificate /etc/nginx/certs/server.crt;
    ssl_certificate_key /etc/nginx/certs/server.key;

    location / {
        proxy_pass http://naturanum_app:9999;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
    }
}

```

Vor dem Start des Watchers wurden mit `bin/build-administration.sh`, `bin/build-js.sh` und `bin/build-storefront.sh` alles einmal gebaut. Anschließend wird der Watcher gestaret mit `bin/watch-storefront.sh`. Es läuft alles durch, gibt keine Fehlermeldungen, der Watcher wird gestartet mit

```auto
ℹ ｢wds｣: Project is running at https://localhost:9998/
ℹ ｢wds｣: webpack output is served from https://localhost:9998/
ℹ ｢wds｣: Content not from webpack is served from /var/www/html/vendor/shopware/storefront/Resources/app/storefront/dist

```

Anschließend hört er auch auf Änderungen und kompiliert. Doch leider kann ich, wie oben beschrieben, die Änderungen nicht sehen, da ich nicht darauf zugreifen kann.

Any Ideas?

---

<div class="post-metadata">

**Author:** ![avirto-cb](https://avatars.discourse-cdn.com/v4/letter/a/6f9a4e/32.png) [@avirto-cb](https://forum.shopware.com/u/avirto-cb)\
**Post date:** [9. September 2023 um 15:07 UTC](https://forum.shopware.com/t/hot-module-replacement-mit-nginx-in-docker/97102/2 "2023-09-09T15:07:17Z")

</div>

No ideas, aber dasselbe Problem in der Container Console.

Ich benutze den Nginx Proxy Manager ([https://nginxproxymanager.com/](https://nginxproxymanager.com/)).
