我有以下docker-compose.yml
配置文件:
silex-twig:
image: php:7.1
command: php -S localhost:4000 /app/index.php
volumes:
- .:/app
ports:
- 3000:4000
当我运行docker-compose up
时,它会下载基本图像,但随后会挂起:
Recreating silextwig_silex-twig_1
Attaching to silextwig_silex-twig_1
我做错了什么? 3000端口没有任何东西可用。 我知道有一些php-fpm + nginx的设置,但这对于开发来说似乎很复杂。
答案 0 :(得分:1)
这很正常。它附加到容器的stdout
(没有记录stdout
)。此时,容器正在运行。
如果您想在后台投放,则可以使用docker-compose up -d
而非docker-compose up
投放。
对端口3000的实际HTTP请求不起作用,因为PHP只在localhost上侦听。您需要将命令修改为php -S 0.0.0.0:4000 /app/index.php
,以便它正在侦听所有IP地址,并且可以通过Docker NAT接受连接。