Dockerfile原因问题“;旋度(56)Recv故障“;
我正在尝试从nginx Dockerfile创建docker容器,但遇到问题。首先,我进行了以下测试:Dockerfile原因问题“;旋度(56)Recv故障“;,docker,nginx,docker-compose,dockerfile,Docker,Nginx,Docker Compose,Dockerfile,我正在尝试从nginx Dockerfile创建docker容器,但遇到问题。首先,我进行了以下测试: # docker run --name test -p 8080:80 -d nginx:latest # curl localhost:8080 这是没有问题的。现在,当我试图从一个现成的容器构建dockerfile时,问题就开始了。以下是我的项目: web/Dockerfile FROM nginx:latest MAINTAINER braulio@braulioti.com.br
# docker run --name test -p 8080:80 -d nginx:latest
# curl localhost:8080
这是没有问题的。现在,当我试图从一个现成的容器构建dockerfile时,问题就开始了。以下是我的项目:
web/Dockerfile
FROM nginx:latest
MAINTAINER braulio@braulioti.com.br
LABEL Description="Project Frontend"
EXPOSE 80
VOLUME ["/usr/share/nginx/html"]
docker compose.yml
version: '3'
services:
web:
build: web
ports:
- "8080:80"
container_name: "project_frontend"
volumes:
- /app/project_frontend:/usr/share/nginx/html
command: /bin/bash
tty: true
当我现在尝试使用“curl”命令时,结果如下:
curl: (56) Recv failure: Connection reset by peer
正如@David所提到的,您根本没有启动nginx,因为docker compose中的这一行将覆盖Dockerfile的CMD
command: /bin/bash
将命令替换为
command: ["nginx", "-g", "daemon off;"]
或移动此Dockerfile
CMD ["nginx", "-g", "daemon off;"]
或者,如果您没有提及,Nginx基本映像将负责处理。您明确告诉Docker不要运行Nginx,而是运行bash shell。这是一个复制/粘贴问题。工作得很好!谢谢@DavidMaze