我一直在尝试使用 Docker Desktop for windows、linux 容器和 Hyper-V 对 Angular 项目进行 docker 化。
这是我的 docker 文件:
FROM node:alpine
WORKDIR /var/app
EXPOSE 4200
COPY package*.json ./
COPY proxy*.json ./
COPY . .
RUN npm install @angular/cli -g
#Custom dependencies
RUN npm config set registry http://maven.corp.com.br:8081/artifactory/api/npm/
RUN npm install
RUN npm run build:dev
ENTRYPOINT npm start
我构建它并可以很好地运行它:
docker build -t name .
docker run -p 4200:4200 name
问题是,当我尝试访问 https://localhost:4200从我的 Windows 电脑,我得到 ERR_CONNECTION_CLOSED。
但是,如果我进入容器 cli,并使用 Links(命令行 Web 浏览器 https://i.imgur.com/jwhD9cm.gif)访问 url,它工作得很好,我只是在尝试从我的 windows pc 访问它时遇到问题。
我也尝试使用 host.docker.domain dns,但没有成功。
任何帮助将不胜感激。
谢谢!
最佳答案
更改 ENTRYPOINT npm start
到ENTRYPOINT npm start -- --host 0.0.0.0 --disable-host-check
或更新 package.json
"start": "ng serve --host 0.0.0.0 --disable-host-check",
关于angular - 从容器外部访问 dockerized 节点应用程序时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62089143/