2016-05-04 29 views
1

Google Container Registry和Docker生态系统的新增功能。我将现有图像推送到gcr.io,我希望完成任务的时间接近0秒,因为所有位都已经在gcr.io上。上下文是在云中运行开发代码,同时在很多内核上运行,与我的Mac笔记本电脑具有的4个内核相反。我正在运行一个无操作来隔离瓶颈,真正的用法大约有6M新字节。这是缓慢的,执行无操作14秒。有没有办法将这个无用操作减少到不到一秒?“gcloud码头推送”的速度

$ time gcloud docker push gcr.io/ai2-general/euclid:latest 
WARNING: login credentials saved in /Users/cristipp/.docker/config.json 
Login Succeeded 
WARNING: login credentials saved in /Users/cristipp/.docker/config.json 
Login Succeeded 
WARNING: login credentials saved in /Users/cristipp/.docker/config.json 
Login Succeeded 
WARNING: login credentials saved in /Users/cristipp/.docker/config.json 
Login Succeeded 
WARNING: login credentials saved in /Users/cristipp/.docker/config.json 
Login Succeeded 
WARNING: login credentials saved in /Users/cristipp/.docker/config.json 
Login Succeeded 
WARNING: login credentials saved in /Users/cristipp/.docker/config.json 
Login Succeeded 
The push refers to a repository [gcr.io/ai2-general/euclid] 
3a67b2b013f5: Layer already exists 
b7c8985fbf02: Layer already exists 
fef418d1a9e8: Layer already exists 
c58360ce048c: Layer already exists 
0030e912789f: Layer already exists 
5f70bf18a086: Layer already exists 
0ece0aa9121d: Layer already exists 
ef63204109e7: Layer already exists 
694ead1cbb4d: Layer already exists 
591569fa6c34: Layer already exists 
998608e2fcd4: Layer already exists 
c12ecfd4861d: Layer already exists 
latest: digest: sha256:04a831f4bf3e3033c40eaf424e447dd173e233329440a3c9796bf1515225546a size: 10321 

real 0m14.742s 
user 0m0.622s 
sys 0m0.181s 

14秒很长时间。使用普通的docker push更快,但仍浪费5个宝贵的时间。

$ time docker push gcr.io/ai2-general/euclid:latest 
The push refers to a repository [gcr.io/ai2-general/euclid] 
3a67b2b013f5: Layer already exists 
b7c8985fbf02: Layer already exists 
fef418d1a9e8: Layer already exists 
c58360ce048c: Layer already exists 
0030e912789f: Layer already exists 
5f70bf18a086: Layer already exists 
0ece0aa9121d: Layer already exists 
ef63204109e7: Layer already exists 
694ead1cbb4d: Layer already exists 
591569fa6c34: Layer already exists 
998608e2fcd4: Layer already exists 
c12ecfd4861d: Layer already exists 
latest: digest: sha256:04a831f4bf3e3033c40eaf424e447dd173e233329440a3c9796bf1515225546a size: 10321 

real 0m5.014s 
user 0m0.030s 
sys 0m0.011s 

我怀疑的差异是由7次的登录尝试,这需要一段时间来处理造成的,后来感觉就像搬运工推开销。

参考:

$ gcloud --version 
Google Cloud SDK 107.0.0 

bq 2.0.24 
bq-nix 2.0.24 
core 2016.04.21 
core-nix 2016.03.28 
gcloud 
gsutil 4.19 
gsutil-nix 4.18 
kubectl 
kubectl-darwin-x86_64 1.2.2 
+0

您是否设法找到了解决方案?我也有7次登录尝试(我的错误信息有点不同'警告:' - 电子邮件'已被弃用,它很快就会被移除。'“ –

+0

感谢您的报告,你正在经历我们正在积极研究这个问题 –

+0

@KennyLeung我也经历过这个问题,即使从gcloud web控制台构建和推送,理论上gcloud web控制台与gcr主机位于同一区域。 – joshwa

回答

1

我认为这是有关向四周创建(或以上书面)我们每次运行“gcloud泊坞窗”命令时.docker/config.json文件