使用docker push进行部署很慢,因为有很多图像

Sea*_*ess 7 deployment docker

我正在尝试通过docker部署.我正在使用以下工作流程:

  1. 在本地构建
  2. 将我的图像推送到docker hub
  3. 在服务器上:拉动图像
  4. 在服务器上:启动图像

但码头推进需要永远.有30个图像,它必须遍历每个图像并说"图像已经存在".有什么方法可以加快速度吗?

或者,我应该使用不同的流程进行部署吗?

ajl*_*ajl 8

如果您像我一样推动 AWS ECR,则可能是您本地的 docker 需要重新启动。请参阅有关 AWS ECR 缓慢的主题:

https://forums.aws.amazon.com/thread.jspa?threadID=222834

这也可能影响其他平台。似乎在 Mac 上的 1.12.1 左右,无论如何,有一些缓慢的问题会随着 Docker 的重新启动而消失。

  • 链接已失效。 (5认同)
  • 在运行 Docker 18.06.1-ce-mac73 并推送到 ECR 的 Mac 10.13.4 上遇到了同样的问题。重新启动 docker,重新推送,并像魅力一样工作。 (2认同)

sea*_*mcl 6

如果您使用的是本地注册表,我们最近添加了一个 redis 缓存,这有助于极大地加快速度。有关如何执行此操作的详细信息,请参见注册表 github 页面

https://github.com/docker/docker-registry

虽然推送新镜像仍然需要时间,但拉取速度非常快,因为所有层都在 redis 缓存中。