使用Docker,你如何执行PHP composer命令?

我是Docker的新手,并将我的PHP环境设置为Dockerfile:

FROM php:7.0-apache COPY src/ /var/www/html/ 

现在我想使用我在github上find的PHP代码,它说要安装它,我只需要做:

 composer require league/oauth2-client 

在进入我的docker集装箱composer php壳甚至没有安装。 如何添加composer php到Dockerfile,然后执行我需要的composer php命令?

我能够通过将这添加到Dockerfile来解决这个问题

 RUN php -r "copy('https://getcomposer.org/installer', 'composer- setup.php');" RUN php -r "if (hash_file('SHA384', 'composer-setup.php') === '669656bab3166a7aff8a7506b8cb2d1c292f042046c5a994c43155c0be6190fa0355160742ab2e1c88d40d5be660b410') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;" RUN php composer-setup.php --install-dir=/usr/local/bin --filename=composer RUN php -r "unlink('composer-setup.php');" RUN composer require league/oauth2-client 

在进入我的docker集装箱壳

这将在运行时( docker run

相反,创build一个新的Dockerfile,它以FROM myimage (您创build的php图像)开头,并添加/复制丢失的内容。

作为一种可能的方法,参见例如“ Get composer(php依赖pipe理器)在Docker镜像构build上运行 ”。