Docker Compose LAMP堆栈不提供index.php

时间:2019-01-27 10:27:51

标签: php docker docker-compose

我正在做一些自由职业,并且与我一起工作的人员将docker的LAMP堆栈使用。我以前从未使用过docker,但遇到了一些问题。他们都使用Mac,而我却拥有Windows,因此他们无法为我提供帮助。最近12个小时,我一直在进行有关此操作的工作,但无法显示index.php页面。我将介绍到目前为止已完成的步骤,并提供文件结构。

我在Windows PowerShell中工作

  1. here
  2. 安装了Docker桌面
  3. 我按照步骤here创建了一个新的docker-machine

    2a。我运行的命令是'docker-machine create -d hyperv --hyperv-virtual-switch“ DockerVS” default'

  4. 然后我运行了'docker-machine env'

  5. 然后我运行了'&“ C:\ Program Files \ Docker \ Docker \ Resources \ bin \ docker-machine.exe”调用表达'

  6. 然后,在同一目录中时,我从GitHub抓取了项目,将目录更改为包含.env和docker-compose.yml文件的位置。然后运行命令'docker-compose up -d'

  7. 在这一点上,我应该能够运行'docker-machine ip default',将该IP粘贴到浏览器中并查看页面。至少这是我所有同事使用Mac所做的事情。如果重要,则IP为10.0.0.117

现在肯定有什么东西在运行,它尝试获取“ index.php”文件,但它向浏览器返回“找不到文件”。该页面也正在运行phpMyAdmin,因此,如果我在浏览器中输入10.0.0.117:8080,则会看到this page。因此,我有信心自己在正确的道路上,我只是假设自己做了一些次要的事情。

所以我尝试了解决方案。我的第一个猜测是我需要一个类似于:8080的端口,该端口可使php页面弹出。我运行了'docker-compose ps ',并尝试了端口443、3360和9000,这些端口我都在这里看到:enter image description here

自然不会。接下来,我尝试了各种路径,然后一起尝试了所有上述端口和路径。我尝试的路径是

  • /index.php
  • /index.html
  • / index
  • /index.htm
  • 以上四个在/ public-html前面
  • 上面带有/ LAMPProject的内容

文件结构如下: enter image description here

总而言之,这就是我正在使用的。在我开始处理更大的东西之前,这是一个相当简单的docker LAMP设置。任何建议都将非常受欢迎。

1 个答案:

答案 0 :(得分:0)

我认为您应该将phpmyadmin端口映射到另一个端口,例如8081,而不是80,也将apache容器映射到80。