【问题标题】:Composer install package from cacheComposer 从缓存中安装包
【发布时间】:2019-06-13 12:05:10
【问题描述】:

我正在使用我安装到 docker php:7.3-cli 的 php composer 1.8.0

每次我用这个作曲家安装包时,它都会下载包,甚至包以前下载过。

  1. composer 在哪里有它下载的包的缓存?

  2. 是否有任何命令行选项或其他设置特定目录作为作曲家缓存?

【问题讨论】:

    标签: docker caching composer-php command-line-interface


    【解决方案1】:

    this:

    COMPOSER_CACHE_DIR 变量允许您更改 Composer 缓存目录,该目录也可通过 cache-dir 选项进行配置。

    默认情况下,它在 *nix 和 macOS 上指向 $COMPOSER_HOME/cache,在 Windows 上指向 C:\Users\\AppData\Local\Composer(或 %LOCALAPPDATA%/Composer)。

    COMPOSER_HOME 变量允许您更改 Composer 主目录。这是一个隐藏的全局(计算机上的每个用户)目录,在所有项目之间共享。

    默认情况下,它指向 Windows 上的 C:\Users\\AppData\Roaming\Composer 和 macOS 上的 /Users//.composer。在遵循 XDG 基本目录规范的 *nix 系统上,它指向 $XDG_CONFIG_HOME/composer。在其他 *nix 系统上,它指向 /home//.composer。

    所以,我猜默认情况下,您需要使用-v 将主机路径作为卷挂载到容器中,以覆盖容器中的COMPOSER_CACHE_DIR。那么每次启动一个新容器,它就可以重用之前的包。

    【讨论】:

      猜你喜欢
      • 2023-03-16
      • 1970-01-01
      • 2015-08-16
      • 2016-07-25
      • 2021-06-05
      • 2012-10-11
      • 2017-09-02
      • 2019-05-08
      • 2014-05-07
      相关资源
      最近更新 更多