当skopeo在两个远程注册表之间复制图像时(或者仅仅从同一个远程注册表复制两个repos ),它的本地缓存在哪里存储?
例如,当执行两次时,此命令显示使用本地缓存的明确证据:
# first time:
$ time skopeo copy docker://docker.io/mirekphd/ml-cpu-r40-rs-cust:latest docker://docker.io/mirekphd/ml-test:latest
real 2m35.696s
user 0m32.312s
sys 0m12.028s
# ... vs. using cache:
$ time skopeo copy docker://docker.io/mirekphd/ml-cpu-r40-rs-cust:latest docker://docker.io/mirekphd/ml-test:latest
real 0m15.004s
user 0m0.898s
sys 0m0.313s我在容器里寻找tar,但是找不到。
用例:我希望将这个文件夹保存到新的mirekphd/ml-skopeo容器之外的外部位置,以便为本地图像缓存分配更多的空间。
发布于 2022-08-31 19:10:26
通过检查skopeo copy在--debug模式下打印的日志,我意识到为图像层缓存选择的默认位置是(根拥有的!) /.local (而不是正确的~/.local)。我将向Skopeo报告这个问题。
有关日志摘录:
DEBU[0001] Error creating parent directories for blob-info-cache-v1.boltdb, using a memory-only cache: mkdir /.local: permission denied https://stackoverflow.com/questions/73554831
复制相似问题