Composer php 如何在DDEV容器中使用主机上的composer缓存?

Composer php 如何在DDEV容器中使用主机上的composer缓存?,composer-php,ddev,Composer Php,Ddev,我想在DDEV容器中使用主机上的composer缓存,以防止不必要的下载并节省时间。解决方案是在.DDEV文件夹中创建一个新的docker-compose.cache.yaml。文件名中点之间的中心词可以是任何内容 文件内容应如下所示:针对ddev v1.1.1更新: version: '3.6' services: web: volumes: - "$HOME/.composer/:/home/.composer/" 这将$HOME/.composer从本地计算机映射

我想在DDEV容器中使用主机上的composer缓存,以防止不必要的下载并节省时间。

解决方案是在.DDEV文件夹中创建一个新的docker-compose.cache.yaml。文件名中点之间的中心词可以是任何内容

文件内容应如下所示:针对ddev v1.1.1更新:

version: '3.6'
services:
  web:
    volumes:
      - "$HOME/.composer/:/home/.composer/"
这将$HOME/.composer从本地计算机映射到DDEV容器中的/HOME/.composer


如果您使用的是Windows,$HOME/AppData/Local/Composer应该是主机上相应的文件夹。

您可以在控制台中使用命令Composer config cache dir找到主机上Composer缓存的位置。如果我们能够将此作为标准技术来解决,没有任何自定义配置。我建议稍微简化一下答案,告诉人们调用docker-compose.cache.yaml文件,并指出中心词并不重要。这使得人们不得不少思考,这总是好的。我稍微修改了我的答案。这其中的一个好处是它不仅使用了容器中主机的缓存,但这也意味着,假设每个项目都有额外的docker compose.cache.yaml,那么每个项目都将共享缓存