nginx Docker设置中的Shopware 6 Webpack热重新加载

5us2dqdw  于 2022-12-17  发布在  Nginx
关注(0)|答案(1)|浏览(180)

我正在Docker设置中运行Shopware 6生产示例,使用PHP-FPM作为应用容器,使用nginx作为反向代理。一切正常,Shopware在https://localhost下提供服务。
现在我试着使用内置的热代理来使用热重载,因为热代理是在docker容器中运行的,所以我必须打开端口并将请求传递给应用容器。
使用./bin/watch-storefront.sh启动热代理,启动时无错误或警告:

ℹ 「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
Starting the hot reload server: 


 DONE  Compiled successfully in 7420ms                                                                                                                                                                   1:05:40 PM

############
Storefront proxy server started at https://localhost:9998
############

当我浏览到http://localhost:9998https://localhost:9998时,我只收到一个502 Bad Gateway错误。使用httpURL,服务器将Rejecting request "GET localhost/" on proxy server for "localhost:9998"写入控制台。
"我真正做的"
我已将端口99989999添加到我的docker-compose.yml

  • 停靠-编写.yml*
ports:
  - "80:80"
  - "443:443"
  - "9000:3276"
  - "9998:9998"
  - "9999:9999"

我还扩展了我的nginx.conf,以便将请求传递给运行热重载服务器的应用程序容器。

  • nginx.配置文件 *
server {
    listen 9998 default_server;

    location / {
        proxy_pass http://naturanum_app:9998;
    }
}

server {
    listen 9999 default_server;

    location / {
       proxy_pass http://naturanum_app:9999;
    }
}

server {
    listen 3276 default_server;

    location / {
        proxy_pass http://naturanum_app:3276;
    }
}

也遵循了文档,并建立了JavaScript,管理和店面一次,然后启动观察者-但它也不工作。
你知道如何在nginx反向代理后面的Docker容器中使用Webpack热代理吗?

v9tzhpje

v9tzhpje1#

嗯,值得一提的是你运行的系统。我在Win10上遇到了一些问题,在WSL2上运行Docker时防火墙端口被封锁了。也许你也需要检查一下防火墙。
另一个要查看的资源是https://dockware.io构建的映像,它们的映像很健壮,并且配置为在大多数设置中运行观察器。你可以查看它们是如何在GitHub上构建这些映像的,看看它们使用了什么配置,也许这里会是一个很好的开始:https://github.com/dockware/dockware/blob/v1.5.4/template/Dockerfile.global.sh.twig

相关问题