Nag*_*aga 11 caching travis-ci docker
是否可以添加设置以在travis配置中的任何位置缓存我的泊坞窗图像?我是一个更大的码头图像,下载需要一段时间.
有什么建议 ?
SCo*_*vin 15
今天(2019 年 10 月)最简单的解决方案是将以下内容添加到.travis.yml:
cache:
directories:
- docker_images
before_install:
- docker load -i docker_images/images.tar || true
before_cache:
- docker save -o docker_images/images.tar $(docker images -a -q)
Run Code Online (Sandbox Code Playgroud)
有关答案,请参阅在 Build #5358 上缓存 Docker 图像
。对于 Travis 上现在可用的 Docker 1.12,建议手动缓存图像。对于 Docker 1.13,您可以--cache-from在 Travis 上使用它。
节省:
before_cache:
# Save tagged docker images
- >
mkdir -p $HOME/docker && docker images -a --filter='dangling=false' --format '{{.Repository}}:{{.Tag}} {{.ID}}'
| xargs -n 2 -t sh -c 'test -e $HOME/docker/$1.tar.gz || docker save $0 | gzip -2 > $HOME/docker/$1.tar.gz'
Run Code Online (Sandbox Code Playgroud)
加载:
before_install:
# Load cached docker images
- if [[ -d $HOME/docker ]]; then ls $HOME/docker/*.tar.gz | xargs -I {file} sh -c "zcat {file} | docker load"; fi
Run Code Online (Sandbox Code Playgroud)
还需要声明一个缓存文件夹:
cache:
bundler: true
directories:
- $HOME/docker
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2956 次 |
| 最近记录: |