Композитор не работает в Windows (WSL)

Установка Composer и попытка его запуска не работают на контейнере php-fpm, когда этот контейнер работает в Windows (Ubuntu bash / WSL).

Тем не менее, он работает гладко везде.

username@docker-php:/var/www/project$ php composer.phar update


[ErrorException]
include(phar:///var/www/project/composer.phar/vendor/composer/../../src/Composer/Command/RunScriptCommand.php
): failed to open stream: phar error: Cannot open phar archive "/var/www/project/composer.phar" for reading

Кроме того, повторное выполнение команды приводит к другой ошибке:

username@docker-php:/var/www/project$ php composer.phar update

Warning: include(phar:///var/www/project/composer.phar/vendor/composer/../../src/Composer/Util/Silencer.php): fail
ed to open stream: phar error: Cannot open phar archive "/var/www/project/composer.phar" for reading in phar:///va
r/www/project/composer.phar/vendor/composer/ClassLoader.php on line 444

Warning: include(): Failed opening 'phar:///var/www/project/composer.phar/vendor/composer/../../src/Composer/Util/
Silencer.php' for inclusion (include_path='.:/usr/local/lib/php') in phar:///var/www/project/composer.phar/vendor/
composer/ClassLoader.php on line 444

Fatal error: Uncaught Error: Class 'Composer\Util\Silencer' not found in phar:///var/www/project/composer.phar/src
/Composer/Console/Application.php:71
Stack trace:
#0 phar:///var/www/project/composer.phar/bin/composer(58): Composer\Console\Application->__construct()
#1 /var/www/project/composer.phar(24): require('phar:///var/www...')
#2 {main}
thrown in phar:///var/www/project/composer.phar/src/Composer/Console/Application.php on line 71

Есть идеи, как заставить это работать?

0

Решение

Исправлена ​​установка Composer по-другому!

RUN curl -sS https://getcomposer.org/installer | php \
&& mv composer.phar /usr/local/bin/ \
&& ln -s /usr/local/bin/composer.phar /usr/local/bin/composer
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]