【发布时间】:2026-01-12 19:50:02
【问题描述】:
在 Windows 的 docker 容器中运行新创建的 Angular 应用程序不会在更改时热重载应用程序。 我试过这个Docker container doesn't reload Angular app。
但一直失败,如果我创建图像然后运行我得到的容器:
web_1 | npm ERR! enoent ENOENT: no such file or directory, open '/usr/src/app/package.json'
我也尝试关注这篇文章(适用于 Mac 但不适用于 Windows):
Dockerizing an Angular App
我尝试将--poll 添加到我的angular.json:
"docker": {
"poll": 2000
},
- 这是我的 DockerFile
FROM node:8.11.2 # set working directory RUN mkdir /usr/src/app WORKDIR /usr/src/app # add `/usr/src/app/node_modules/.bin` to $PATH ENV PATH /usr/src/app/node_modules/.bin:$PATH COPY package.json /usr/src/app/package.json RUN npm install RUN npm install -g @angular/cli@6.1.5 # add app COPY . /usr/src/app EXPOSE 4200 49153 # start app CMD ng serve --port 4200 --host 0.0.0.0 --poll 1
我就是这样运行它的:docker build -t something-clever .
对于容器:docker run -it -v C:/Users/test-docker -v /usr/src/app/node_module -p 4200:4200 -p 49153:49153 --rm something-clever bash -c "npm start"
感谢任何帮助。 谢谢你。
【问题讨论】:
-
我在 Windows 桌面和 docker 上遇到了同样的问题。尝试将
--poll添加到您的ng serve命令:ng serve --host 0.0.0.0 --port 4256 --configuration hmr --source-map=false --hmr-warning=false --poll 1。 ` --poll 启用并定义文件观察轮询时间,以毫秒为单位。`