用于SPA应用程序的.NET Core Docker映像

用于SPA应用程序的.NET Core Docker映像,第1张

用于SPA应用程序的.NET Core Docker映像

问题是您的dockerfile(microsoft / aspnetcore:latest)中的基础映像没有安装节点

因此,您必须安装节点才能运行该项目。这是我想到的dockerfile:

FROM microsoft/aspnetcore:2.0ARG sourceEXPOSE 80 5102ENV ASPNETCORE_URLS http://*:80RUN apt-get -qq update && apt-get -qqy --no-install-recommends install wget gnupg     git     unzipRUN curl -sL https://deb.nodesource.com/setup_6.x |  bash -RUN apt-get install -y nodejsWORKDIR /appCOPY ${source:-obj/Docker/publish} .ENTRYPOINT ["dotnet", "Project.dll"]

请注意,在dockerfile的第5行中,我如何运行命令来更新apt-get。然后在第8-9行中将节点安装到Docker映像

仍然存在问题,无法从webpack替换热模块。甚至无法完全刷新。我仍在寻找它。

更新: 所以我调查了热模块更换问题,它似乎是Windows的docker的局限性。

解决方法是配置webpack,以便它可以告诉浏览器在确定的时间内轮询更改。查看此链接以了解如何配置它

更新: 做更多的研究,我发现Microsoft具有可用于构建项目的映像,该映像称为:microsoft / aspnetcore-
build。该映像具有构建所需的所有依赖关系(包括nodejs)。

因此,最后,我要做的是保持Dockerfile不变(以microsoft /
aspnetcore:2.0作为基础映像),并创建了一个新的Dockerfile进行开发,该文件引用了我之前提到的构建映像。在docker
compose的帮助下,我根据环境切换了Dockerfile。

这种方法似乎更方便,因为当将图像部署到生产环境时,它们应该已经准备好所有的javascript代码(对于带有angular
2,react等的spa应用程序),换句话说,它们不应该具有nodejs依赖性,因此它们的重量较轻。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4957149.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-13
下一篇 2022-11-13

发表评论

登录后才能评论

评论列表(0条)

保存