我将 gitlab-ci-multi-runner 与 docker 容器一起使用。一切都很好,但是 docker 容器不会保留composer
缓存,因此在每次运行时都会composer
一次又一次地下载依赖项,这需要很多时间。有什么方法可以配置gitlab-ci-runner
docker 容器以保留composer
缓存或在每次运行composer
保存缓存的位置挂载一个卷?
问问题
8235 次
2 回答
37
您可以通过在运行器配置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"
于 2016-01-24T23:18:15.207 回答
8
您可以修改作曲家缓存路径并将内容写入 docker 卷。
该存储是持久的,可以跨容器共享。
参考:
于 2015-11-02T15:13:33.997 回答