Php 未能在docker容器中安装composer程序包
因为有几天我不能再在我的本地docker容器中安装composer软件包了。 我使用composer init创建了新的composer.json,并尝试使用composer require fzaninotto/faker添加一个包 我总是收到相同的错误消息Php 未能在docker容器中安装composer程序包,php,git,docker,composer-php,Php,Git,Docker,Composer Php,因为有几天我不能再在我的本地docker容器中安装composer软件包了。 我使用composer init创建了新的composer.json,并尝试使用composer require fzaninotto/faker添加一个包 我总是收到相同的错误消息 # composer require fzaninotto/faker Using version ^1.9 for fzaninotto/faker ./composer.json has been updated Loading co
# composer require fzaninotto/faker
Using version ^1.9 for fzaninotto/faker
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Package operations: 1 install, 0 updates, 0 removals
Failed to download fzaninotto/faker from dist: The zip extension and unzip command are both missing, skipping.
Your command-line PHP is using multiple ini files. Run `php --ini` to show them.
Now trying to download from source
- Installing fzaninotto/faker (v1.9.1): Cloning fc10d778e4 from cache
fc10d778e4b84d5bd315dad194661e091d307c6f is gone (history was rewritten?)
Installation failed, reverting ./composer.json to its original content.
[RuntimeException]
Failed to execute git checkout 'fc10d778e4b84d5bd315dad194661e091d307c6f' -- && git reset --hard 'fc10d778e4b84d5bd315dad194661e091d307c6f' --
fatal: failed to read object fc10d778e4b84d5bd315dad194661e091d307c6f: Operation not permitted
require [--dev] [--prefer-source] [--prefer-dist] [--fixed] [--no-progress] [--no-suggest] [--no-update] [--no-scripts] [--update-no-dev] [--update-with-dependencies] [--update-with-all-dependencies] [--ignore-platform-reqs] [--prefer-stable] [--prefer-lowest] [--sort-packages] [-o|--optimize-autoloader] [-a|--classmap-authoritative] [--apcu-autoloader] [--] [<packages>]...
首先,我想我的ssh密钥是问题所在,但我创建了一个新的ssh密钥,并将其添加到github,但出现了相同的错误。
然后我试着用composer clear解决了这个问题
问题出现在每个docker容器和每个composer包中。。。因此,我不能成为一个单一的包装或容器的问题
有谁知道我可以再次使用composer吗 如果您使用的是Docker Desktop Windows,并且已更新到最新版本2.2.0.4,则会出现此问题
降级到2.2.0.3,它应该会再次工作,至少对我来说是这样。
见:
降级:
卸载Docker桌面。注意:它将删除您的容器,如果您想重新导入,请在之前保存它们
转到本页:
单击2.2.0.3下的下载
使用安装程序文件安装Docker Desktop
启动时,它会要求升级到2.2.0.4,只需说跳过此版本
如果您使用的是Docker Desktop Windows,并且已更新到最新版本2.2.0.4,则会出现此问题
降级到2.2.0.3,它应该会再次工作,至少对我来说是这样。
见:
降级:
卸载Docker桌面。注意:它将删除您的容器,如果您想重新导入,请在之前保存它们
转到本页:
单击2.2.0.3下的下载
使用安装程序文件安装Docker Desktop
启动时,它会要求升级到2.2.0.4,只需说跳过此版本
我没有足够的分数来评论上面的答案,但是Docker问题刚刚结束,所以只要在Windows上更新Docker桌面就可以解决它。至少对我有用。现在我可以再次安装Drupal了 我没有足够的分数来评论上面的答案,但是Docker问题刚刚解决,所以只要在Windows上更新Docker桌面就可以解决它。至少对我有用。现在我可以再次安装Drupal了 输出告诉您发生了什么:fc10d778e4b84d5bd315dad194661e091d307c6f已消失历史已重写?。在packagist中,有一个对提交的引用,但是如果您到达Github,提交不在master中,这意味着历史被重写。您可以尝试安装zip扩展,这将使composer从PackageGist获取。@但提交已经存在。我无法使用此提交签出存储库,我工作正常。只有composer不会提取它,它在每个包上都有一个提交,但有相同的错误消息。输出告诉您发生了什么:fc10d778e4b84d5bd315dad194661e091d307c6f已消失历史已重写?。在packagist中,有一个对提交的引用,但是如果您到达Github,提交不在master中,这意味着历史被重写。您可以尝试安装zip扩展,这将使composer从PackageGist获取。@但提交已经存在。我无法使用此提交签出存储库,我工作正常。只有composer不会获取它,它在每个包上都有一个提交,但有相同的错误消息。谢谢。不是这样的。我从不认为更新是他们处理fix2.2.0.5的原因,我说它修复了只读文件不允许的操作,谢谢。不是这样的。我从不认为更新是他们处理fix2.2.0.5的原因,我说它是只读文件不允许的修复操作