官方镜像 Docker PHP 中禁止使用

alv*_*zsh 7 php apache docker

我正在测试官方镜像 docker PHP:

docker run -d -p 8000:80 --name test php:7-apache
Run Code Online (Sandbox Code Playgroud)

然后,我测试http://localhost:8000,我发现:

Forbidden

You don't have permission to access / on this server.
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

Dee*_*eja 5

docker run -d -p 8000:80 --name test php:7-apache -v "$PWD":/var/www/html
Run Code Online (Sandbox Code Playgroud)

转到您的项目文件夹并运行上述命令或将 $PWD 替换为您的项目目录。-v 会将您的项目同步到 docker 容器。

或者创建一个 Docker 文件并使用副本在容器中运行您的项目。

上述任何一项都可以解决您的问题。错误的可能原因是没有要渲染的项目。


BMi*_*tch 3

此图像中不包含 hello world,/var/www/html/是空的,因此没有可查看的内容。您需要按照此图像上的页面指示捆绑您自己的代码:

我们建议您添加自定义 php.ini 配置。通过在上面的 Dockerfile 中再添加一行并运行相同的命令来构建和运行,将其复制到 /usr/local/etc/php 中:

FROM php:7.0-apache
COPY config/php.ini /usr/local/etc/php/
COPY src/ /var/www/html/
Run Code Online (Sandbox Code Playgroud)