Docker и localhost, кажется, не соединяются как следует - PullRequest
0 голосов
/ 05 мая 2018

Итак, я новичок в Docker и хотел запустить Docker-контейнер с системой Apache, которая должна просто показать один простой php-файл "hello world". Я следовал за учебником YouTube для этого.

Теперь я мог настроить контейнер и запустить образ, я также связал порт контейнера с портом снаружи, но кажется, что он не работает. Мой http://localhost:80 (<- я подключил порт 80 к порту 80 в контейнере) и ничего не произошло. Возможно ли, что мой брандмауэр убивает соединение? </p>

Вот докер-файл и мой php-файл:

PHP

<? php
echo "Hello World";

Dockerfile

FROM php:7.0-apache
COPY src/ /var/www/html
EXPOSE 80

Вот учебник: https://www.youtube.com/watch?v=YFl2mCHdv24

К сожалению, мои знания настолько ограничены, что я даже не представляю, где искать проблему.

Edit: После сборки моего контейнера я использовал

docker run -p 80:80 <name of container>

Спасибо, что нашли время

1 Ответ

0 голосов
/ 05 мая 2018

Вы должны запустить образ с опцией -p, например:

docker run -p 80:80 <image name>

Expose работает только для внутренней передачи изображений Docker. -p затем сопоставляет порт хоста с портом контейнера:

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