我正在尝试从Nginx Dockerfile创建一个Docker容器,并且遇到了问题。首先,我执行了以下测试:
# docker run --name test -p 8080:80 -d nginx:latest
# curl localhost:8080
这没有问题。现在,当我尝试从就绪容器构建dockerfile时,我的问题开始了。以下是我的项目:
网络/ 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
答案 0 :(得分:1)
如@David所述,您根本不会启动nginx,因为docker-compose中的这一行将覆盖Dockerfile的CMD。
command: /bin/bash
将命令替换为
command: ["nginx", "-g", "daemon off;"]
或移动此Dockerfile
CMD ["nginx", "-g", "daemon off;"]
或者,如果您根本不提及Nginx基本图像,那么您会照顾好它。