【发布时间】:2019-02-25 16:19:40
【问题描述】:
我想在容器上运行 PHP 应用程序,当我去 localhost:5000 时,可以查看网站。运行容器时,在localhost:5000上看不到网站,只能在172.12.0.6:80上看到(不知道这个ip是什么)。
这是码头文件:
FROM php:7.0-apache
RUN echo "ServerName localhost" >> /etc/apache2/apache2.conf
COPY ./index.php /var/www/html/
EXPOSE 5000
这是index.php,如果你有兴趣(我知道它很复杂):
<html>
<title>website</title>
<body>
<?php
echo "hello world";
?>
</body>
</html>
这是我构建和运行映像的方式:
$ sudo docker build -t website website/
$ sudo docker run -it --name website --network mynetwork website:latest
这是我运行映像时的日志:
$ sudo docker run -it --name website --network mynetwork website:latest
[Mon Feb 25 16:08:05.912611 2019] [mpm_prefork:notice] [pid 1] AH00163: Apache/2.4.25 (Debian) PHP/7.0.33 configured -- resuming normal operations
[Mon Feb 25 16:08:05.912682 2019] [core:notice] [pid 1] AH00094: Command line: 'apache2 -D FOREGROUND'
【问题讨论】:
-
尝试将
-p 5000:80添加到您的 docker run 命令中,该命令应该将 localhost 上的端口 5000 映射到容器的端口 80(很可能是 IP 172.12.0.6)。 -
我没有足够的信用标记为答案,我该怎么办?
标签: php docker localhost containers