从 docker 容器到主机进行端口映射时如何修复 "curl (56) Recv failure: Connection reset by peer" 错误?
How to fix "curl (56) Recv failure: Connection reset by peer" error when doing a port mapping from docker container to host machine?
我在端口 4200 的 docker 容器中有一个 Angular 项目 运行。我已经完成了从 docker 容器的 4200 端口到我的本地主机 4200 的端口映射.
我是 运行 这个 Ubuntu 16.04。做 netstat -nltp
时,我得到输出
tcp6 0 0 :::4200 :::* LISTEN
我的 Dockerfile 看起来像:
FROM node
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app
COPY package.json /usr/src/app
RUN npm cache clean --force
RUN npm install
COPY . /usr/src/app
EXPOSE 4200
CMD ["npm","start"]
我希望在 运行 curl :::4200 时显示网页源代码而不是错误,
curl (56) Recv failure: Connection reset by peer
首次运行容器时执行端口映射
docker run -ti --name angular angular_image:latest -p 4200:4200
这将覆盖 docker 文件中的 EXPOSE 命令。实际上 docker 会分配一个从容器到主机的随机端口映射。所以,有必要有一个端口映射 docker cli.
为我的 angular 项目更改 package.json
中的以下内容就成功了。
之前
{
"name": "client",
"version": "0.0.0",
"scripts": {
"ng": "ng",
"start": "ng serve",
"build": "ng build",
"test": "ng test",
"lint": "ng lint",
"e2e": "ng e2e"
}
之后
{
"name": "client",
"version": "0.0.0",
"scripts": {
"ng": "ng",
"start": "ng serve --host 0.0.0.0",
"build": "ng build",
"test": "ng test",
"lint": "ng lint",
"e2e": "ng e2e"
},
关注this link了解更多详情
我在端口 4200 的 docker 容器中有一个 Angular 项目 运行。我已经完成了从 docker 容器的 4200 端口到我的本地主机 4200 的端口映射.
我是 运行 这个 Ubuntu 16.04。做 netstat -nltp
时,我得到输出
tcp6 0 0 :::4200 :::* LISTEN
我的 Dockerfile 看起来像:
FROM node
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app
COPY package.json /usr/src/app
RUN npm cache clean --force
RUN npm install
COPY . /usr/src/app
EXPOSE 4200
CMD ["npm","start"]
我希望在 运行 curl :::4200 时显示网页源代码而不是错误,
curl (56) Recv failure: Connection reset by peer
首次运行容器时执行端口映射
docker run -ti --name angular angular_image:latest -p 4200:4200
这将覆盖 docker 文件中的 EXPOSE 命令。实际上 docker 会分配一个从容器到主机的随机端口映射。所以,有必要有一个端口映射 docker cli.
为我的 angular 项目更改 package.json
中的以下内容就成功了。
之前
{
"name": "client",
"version": "0.0.0",
"scripts": {
"ng": "ng",
"start": "ng serve",
"build": "ng build",
"test": "ng test",
"lint": "ng lint",
"e2e": "ng e2e"
}
之后
{
"name": "client",
"version": "0.0.0",
"scripts": {
"ng": "ng",
"start": "ng serve --host 0.0.0.0",
"build": "ng build",
"test": "ng test",
"lint": "ng lint",
"e2e": "ng e2e"
},
关注this link了解更多详情