Nginx在Docker集装箱中赢得';不要运行PHP

Nginx在Docker集装箱中赢得';不要运行PHP,php,nginx,docker,haproxy,Php,Nginx,Docker,Haproxy,我是Docker的初学者,我正在尝试建立自己的形象:Ubuntu+Nginx+PHP 因此,我有一个名为test的目录。在目录中,另外两个目录,app和站点已启用。此外,还有一个Dockerfile,其内容如下: FROM ubuntu:trusty RUN apt-get update && \ apt-get install -y nginx php5-fpm php5-mysql php-apc php5-imagick php5-imap php5-mcrypt

我是Docker的初学者,我正在尝试建立自己的形象:Ubuntu+Nginx+PHP

因此,我有一个名为test的目录。在目录中,另外两个目录,app站点已启用。此外,还有一个Dockerfile,其内容如下:

FROM ubuntu:trusty

RUN apt-get update && \
    apt-get install -y nginx php5-fpm php5-mysql php-apc php5-imagick php5-imap php5-mcrypt php5-gd libssh2-php && \
    apt-get clean && \
    rm -rf /var/lib/apt/lists/*

RUN echo "daemon off;" >> /etc/nginx/nginx.conf
ADD sites-enabled/ /etc/nginx/sites-enabled/
ADD app/ /app/

EXPOSE 80
CMD ["php5-fpm", "-c", "/etc/php5/fpm"]
CMD ["/usr/sbin/nginx"]
我成功地建立了这个形象。然后我用
docker run-d image\u name
创建容器。我获取ID,然后运行
docker inspect-f“{{.NetworkSettings.IPAddress}}”ID
,以获取容器的IP地址

我需要这个IP地址,因为我还在另一个容器中运行HAProxy,所以我可以将它配置为指向正确的Location

因此,HAProxy和container with PHP应用程序都运行正常。HAProxy指向正确的应用程序。PHP应用程序文件上载到容器内的正确位置

但是,Nginx不执行PHP。相反,当我尝试访问应用程序时,我只会得到一个下载的文件,其中包含index.php代码

有什么问题吗?请帮忙

我的第一个猜测是,当我运行php5 fpm时,我在Dockerfile中做了一些错误的事情。我尝试过几种不同的方法,但似乎没有一种有效。

只有一种


如果您需要“服务”,请查看或运行它。

非常感谢!不知何故,我错过了文档的这一部分。我通过在Dockerfile的末尾执行bash脚本(调用SupervisorOrd)解决了这个问题。