Asp.net core Docker for Windows、AspNetCore和aspnet网页包热模块
我最近将我的AspNetCore web应用程序转换为使用docker容器进行本地开发,并且在让npm模块“AspNetWebpack”正常工作时遇到了麻烦 启动容器时,出现以下错误:Asp.net core Docker for Windows、AspNetCore和aspnet网页包热模块,asp.net-core,npm,webpack,docker-for-windows,hot-module-replacement,Asp.net Core,Npm,Webpack,Docker For Windows,Hot Module Replacement,我最近将我的AspNetCore web应用程序转换为使用docker容器进行本地开发,并且在让npm模块“AspNetWebpack”正常工作时遇到了麻烦 启动容器时,出现以下错误: Microsoft.AspNetCore.NodeServices.HostingModels.NodeInvocationException:网页包开发中间件失败,因为加载“aspnet网页包”时出错。错误是:错误:enoint:没有这样的文件或目录,lstat'C:\containerAppedDirecto
Microsoft.AspNetCore.NodeServices.HostingModels.NodeInvocationException:网页包开发中间件失败,因为加载“aspnet网页包”时出错。错误是:错误:enoint:没有这样的文件或目录,lstat'C:\containerAppedDirectory'
当然,如果我注释掉下面的代码片段,错误就会消失,但如果有人对如何让我的webpack hot module正常工作提出一些建议,我将不胜感激:
app.UseWebpackDevMiddleware(new WebpackDevMiddlewareOptions
{
HotModuleReplacement = true
});
下面是我的DockerFile的一个简化片段(希望我没有遗漏任何内容):
还有我的docker-compose.yml的一个简化片段:
services:
webapp:
image: ${DOCKER_REGISTRY-}webapp
build:
context: .
dockerfile: WebApp\Dockerfile
environment:
- ASPNETCORE_ENVIRONMENT=Development
- ASPNETCORE_URLS=http://+:80
ports:
- "53760:80"
volumes:
- ${APPDATA}/ASP.NET/Https:C:\Users\ContainerUser\AppData\Roaming\ASP.NET\Https:ro
- ${APPDATA}/Microsoft/UserSecrets:C:\Users\ContainerUser\AppData\Roaming\Microsoft\UserSecrets:ro
- .\WebApp\node_modules:C:/app/node_modules
请注意,我尝试将节点_模块从本地计算机映射到容器,以查看这是否有助于热模块查找“aspnet webpack”
services:
webapp:
image: ${DOCKER_REGISTRY-}webapp
build:
context: .
dockerfile: WebApp\Dockerfile
environment:
- ASPNETCORE_ENVIRONMENT=Development
- ASPNETCORE_URLS=http://+:80
ports:
- "53760:80"
volumes:
- ${APPDATA}/ASP.NET/Https:C:\Users\ContainerUser\AppData\Roaming\ASP.NET\Https:ro
- ${APPDATA}/Microsoft/UserSecrets:C:\Users\ContainerUser\AppData\Roaming\Microsoft\UserSecrets:ro
- .\WebApp\node_modules:C:/app/node_modules