dockerfile - 宿主机 无法访问docker的容器(nginx)

查看:404
本文介绍了dockerfile - 宿主机 无法访问docker的容器(nginx)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

正常启动容器

[root@iZ287mq5dooZ data]# docker run --name nginx11 -p 80:80 -d -v /www:/www -v /data:/data --link php7:php7 -it centos/nginx:v1.11.5  
9078f7a9a3550f39127ec07e734d0179453d6d1da60a141f71a14bc352bb8f5d
[root@iZ287mq5dooZ data]# docker ps 
CONTAINER ID        IMAGE                  COMMAND                  CREATED             STATUS              PORTS                         NAMES
9078f7a9a355        centos/nginx:v1.11.5   "/usr/local/nginx/sbi"   6 minutes ago       Up 6 minutes        0.0.0.0:80->80/tcp, 443/tcp   nginx11
e15ebb8a53b2        centos/php:v7.0.12     "/usr/local/php/sbin/"   2 hours ago         Up 2 hours          0.0.0.0:9000->9000/tcp        php7

宿主机访问,不能正常访问,返回Empty reply from server,一直找不到原因

[root@iZ287mq5dooZ data]# curl http://127.0.0.1
curl: (52) Empty reply from server
[root@iZ287mq5dooZ data]# curl http://127.0.0.1
curl: (56) Recv failure: Connection reset by peer

但进入容器内访问是可以正常返回的,bms是返回的内容

[root@iZ287mq5dooZ data]# docker inspect --format "{{ .State.Pid }}"  9078f7a9a355
22063
[root@iZ287mq5dooZ data]# nsenter --target 22063 --mount --uts --ipc --net --pid
[root@9078f7a9a355 /]# curl http://localhost
bms

使用此方式访问也不行

[root@iZ287mq5dooZ data]# docker inspect --format='{{.NetworkSettings.IPAddress}}' 9078f7a9a355
192.168.0.3
[root@iZ287mq5dooZ data]# curl http://192.168.0.3
curl: (7) Failed connect to 192.168.0.3:80; Connection refused

请教一下大家,处理该问题的思路是怎样的?

解决方案

是个人写nginx.conf 时把nginx的配置的监听端口写错导致的,改为

    server {
        listen       80; // 我写的是127.0.0.1, 其它配置略
    }

这篇关于dockerfile - 宿主机 无法访问docker的容器(nginx)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆