如何使用Dockerfile在容器中安装PHPUnit



我正在尝试使用基于php:7.4-fpm-alpine图像的dockerfile安装PHPUnit

FROM php:7.4-fpm-alpine
RUN touch /var/log/error_log
ADD ./php/www.conf /usr/local/etc/php-fpm.d/www.conf
RUN addgroup -g 1000 wp && adduser -G wp -g wp -s /bin/sh -D wp
RUN mkdir -p /var/www/html
RUN chown wp:wp /var/www/html
WORKDIR /var/www/html
RUN docker-php-ext-install mysqli pdo pdo_mysql && docker-php-ext-enable pdo_mysql
RUN curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
RUN chmod +x wp-cli.phar && mv wp-cli.phar /usr/local/bin/wp
# Install Composer
RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
#install PHPunit
RUN curl -O https://phar.phpunit.de/phpunit-6.5.phar
RUN chmod +x phpunit-6.5.phar && mv phpunit-6.5.phar /usr/local/bin/phpunit
RUN phpunit --version

但我一直得到错误:

=>错误[7/7]运行phpunit--版本0.4秒

[7/7]运行phpunit--版本:#11 0.348/usr/local/bin/phpunit:第1行:无法打开html:没有这样的文件#11 0.348/usr/local/bin/phpunit:第2行:语法错误:意外重定向

我不知道为什么phpunit命令不可用。有人能帮我一点忙吗?

maik@LA-027:~/docker$ php phpunit-6.5.phar --version
<html>
<head><title>302 Found</title></head>
<body>
<center><h1>302 Found</h1></center>
<hr><center>nginx</center>
</body>
</html>

你的消息来源还给了302。

phpunit-6.5.phar在站点上不存在。必须是phpunit-6.5.0.phar

只需查看phar列表

phar列表

您已经安装了composer,为什么不使用composer来安装所有phpunit呢?

composer require phpunit/phpunit ^6.5

最新更新