我有index.php:
<?php
echo "Hello World";
?>
Run Code Online (Sandbox Code Playgroud)
来自网站的Dockerfile:https ://docs.docker.com/samples/library/php/
FROM php:7.2-cli
COPY . /usr/src/myapp
WORKDIR /usr/src/myapp
CMD [ "php", "./index.php" ]
Run Code Online (Sandbox Code Playgroud)
我建立映像并运行容器:
docker build -t my-php-app .
docker run -p 7000:80 --rm --name hello-world-test my-php-app
Run Code Online (Sandbox Code Playgroud)
我只看到文本“ Hello World”,但是我的应用程序在http:// localhost:7000 /中不起作用,为什么?
小智 18
如果您想“即时”运行一些脚本,php-cli您可以创建容器并在脚本执行后立即将其删除。
只需转到包含您的代码的目录并运行:
Unix
docker container run --rm -v $(pwd):/app/ php:7.4-cli php /app/script.php
Run Code Online (Sandbox Code Playgroud)
视窗 - cmd
docker container run --rm -v %cd%:/app/ php:7.4-cli php /app/script.php
Run Code Online (Sandbox Code Playgroud)
Windows - 电源外壳
docker container run --rm -v ${PWD}:/app/ php:7.4-cli php /app/script.php
Run Code Online (Sandbox Code Playgroud)
--rm 执行后将移除容器
-v $(pwd):/app/ 将挂载当前目录
php:7.4-cli 是图像
并且php /app/script.php是在容器创建后将执行的命令
Ort*_*kni 13
您可以保留与您拥有的相同的基本图像php:7.2-cli,:
FROM php:7.2-cli
COPY . /usr/src/myapp
WORKDIR /usr/src/myapp
CMD [ "php", "./index.php" ]
Run Code Online (Sandbox Code Playgroud)
构建图像:
docker build -t my-php-app .
Run Code Online (Sandbox Code Playgroud)
运行:
docker run --rm --name hello-world-test my-php-app
Run Code Online (Sandbox Code Playgroud)
您将获得:
Hello World
Run Code Online (Sandbox Code Playgroud)
除了端口映射 ( -p 7000:80)之外,您所做的一切都是正确的,这不是必需的,因为您没有运行 Web 服务器。
== 编辑
如果要将其作为 Web 服务器运行,请使用以下 Dockerfile:
FROM php:7.2-apache
COPY . /var/www/html/
Run Code Online (Sandbox Code Playgroud)
构建它:
docker build -t my-php-app .
Run Code Online (Sandbox Code Playgroud)
并运行它:
docker run -p 8080:80 -d my-php-app
Run Code Online (Sandbox Code Playgroud)
然后,您将在 8080 上运行您的 PHP 脚本。
小智 12
\xc2\xa01。创建简单的 php 脚本:
\necho \'<?php echo "Working";\' > my.php\nRun Code Online (Sandbox Code Playgroud)\n\xc2\xa02。运行码头工人:
\ndocker run -p 8080:8080 --rm -v $(pwd):$(pwd) php:7.4-cli php -S 0.0.0.0:8080 $(pwd)/my.php\nRun Code Online (Sandbox Code Playgroud)\n\xc2\xa03。在浏览器中打开:
\n\n| 归档时间: |
|
| 查看次数: |
3059 次 |
| 最近记录: |