Как увидеть содержимое сервера Docker в браузере - PullRequest
0 голосов
/ 04 ноября 2018

установка docker toolbox в win7 64bit

мой код:

docker run --name web -d -p 8000:8000 richarvey/nginx-php-fpm

Я не вижу результатов в браузере Chrome.

переустановить docker toolbox && reboot && отключить брандмауэр не помогло.

192.168.99.100: 8000
172.17.0.2:8000
localhost: 8000

docker inspect web | grep IPAddress

показать:

        "SecondaryIPAddresses": null,
        "IPAddress": "172.17.0.2",
                "IPAddress": "172.17.0.2",

пробег:

$ docker-machine ls

показать:

NAME      ACTIVE   DRIVER       STATE     URL      SWARM   DO
CKER        ERRORS
default   *        virtualbox   Running   tcp://192.168.99.100:2376           v1
8.06.1-ce

пробег:

$ docker ps

показать:

CONTAINER ID        IMAGE                     COMMAND                  
CREATED
       STATUS              PORTS
NAMES
65b815ffa17c        richarvey/nginx-php-fpm   "docker-php-entrypoi"   4 hours ag
o         Up 4 hours          80/tcp, 443/tcp, 9000/tcp, 0.0.0.0:8000->8000/tcp
web

enter image description here


обновление

docker run --name web -d -p 8000:80 richarvey/nginx-php-fpm

http://192.168.99.100:8000/ <- только эта работа! <br> http://172.17.0.2:8000/
http://localhost:8000/

Внутри докера,

  1. сначала проверьте, работает ли nginx.

  2. посмотрите, какой процесс использует порт 80


bash-4.4# ps aux | grep nginx
   14 root      0:00 nginx: master process /usr/sbin/nginx -g daemon off; error_
log /dev/stderr info;
   15 nginx     0:00 nginx: worker process
   16 nginx     0:00 php-fpm: pool www
   17 nginx     0:00 php-fpm: pool www
   18 nginx     0:00 php-fpm: pool www
   29 root      0:00 grep nginx
bash-4.4# netstat -tulpn | grep :80
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN
14/stderr info;
tcp        0      0 :::80                   :::*                    LISTEN
14/stderr info;
bash-4.4#

1 Ответ

0 голосов
/ 04 ноября 2018

Образ, который вы используете, публикует порт NGinx на своем порту 80. Поэтому, если вы хотите, чтобы он был на вашем публичном порту 8000, вы должны запустить контейнер с:

docker run --name web -d -p 8000:80 richarvey/nginx-php-fpm

Редактировать: В качестве альтернативы (только с Docker в Linux) вы можете получить доступ к частному IP-адресу контейнера (взятому из docker inspect web) через порт 80 через браузер: http://172.17.0.2

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...