【问题标题】:GitLab-CI Multi Runner php composer cacheGitLab-CI Multi Runner php 作曲家缓存
【发布时间】:2016-02-02 10:50:35
【问题描述】:

我将 gitlab-ci-multi-runner 与 docker 容器一起使用。一切都很好,但是 docker 容器不会保留 composer 缓存,因此在每次运行时 composer 会一次又一次地下载依赖项,这需要很多时间。有什么方法可以配置gitlab-ci-runner docker 容器以保留composer 缓存或在每次运行时挂载一个卷以保留composer 缓存?

【问题讨论】:

    标签: php docker composer-php gitlab gitlab-ci-runner


    【解决方案1】:

    您可以通过在runner configuration 文件中导出COMPOSER_CACHE_DIR 环境变量来更改作曲家缓存路径,然后在[runners.docker] 部分添加一个卷以匹配它。

    如果您以 root 身份或使用 sudo 运行 gitlab-runner,那么您的配置文件位于 /etc/gitlab-runner/config.toml。否则它位于$HOME/.gitlab-runner/config.toml

    # config.toml
    
    [[runners]]
      name = "Generic Docker Runner"
      ...
      environment = ["COMPOSER_CACHE_DIR=/cache"]
      executor = "docker"
      [runners.docker]
        ...
        volumes = ["/var/cache:/cache:rw"]
        cache_dir = "/cache"
    

    【讨论】:

    • 工作愉快,谢谢!看到这些包一次又一次地下载真的很烦人。
    【解决方案2】:

    您可以修改作曲家缓存路径并将内容写入 docker 卷。

    该存储是持久的,可以跨容器共享。

    参考:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-05-22
      • 1970-01-01
      • 1970-01-01
      • 2015-10-06
      • 1970-01-01
      • 1970-01-01
      • 2019-05-13
      • 1970-01-01
      相关资源
      最近更新 更多