2015-04-24 1 views
6

Я пытаюсь развернуть через докер. Я использую следующий рабочий процесс:Развертывание с докером-толканием происходит медленно, потому что есть много изображений

  1. Построить локально
  2. Нажмите мое изображение для докер HUB
  3. На сервере: тянуть изображение
  4. На сервере: запустите файл

Но докерный удар занимает FOREVER. Есть 30 изображений, и они должны пройти через каждый и сказать «Изображение уже существует». Есть ли способ ускорить это?

В качестве альтернативы, следует ли использовать другой процесс для развертывания?

ответ

4

Если вы используете локальный реестр, мы недавно добавили кеш redis, который помог ускорить работу. Подробнее о том, как это сделать находятся на GitHub реестра странице

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

Прижимая по-прежнему занимает много времени на новые изображения, тянет очень быстро, так как все слои находятся в кэше Redis.

+0

Что касается проверки изображений, которые уже нажаты? Сейчас требуется ~ 2-3 секунды на слой с изображениями, поэтому даже если они все уже кэшированы, это занимает навсегда. –

+0

Это мгновенно с нашей настройкой. Если вы сохраняете значение s3, полезно использовать redis. Я не сильно подталкиваю к докеррубу, поэтому я не могу с этим поговорить. – seanmcl

+0

Docker-registry устарел в пользу распределения докеров. Он заменяет проект docker/docker-registry с новым дизайном API https://github.com/docker/distribution – calebeaires

2

Наиболее вероятная причина, по которой вы нажимаете больше/больших слоев изображений при каждом развертывании, заключается в том, что вы не оптимизировали свои файлы Dockerfiles. Вот хороший ввод http://blog.tutum.co/2014/10/22/how-to-optimize-your-dockerfile/.

+0

В любом случае, для меня я использую что-то похожее на возможность создания изображений на сервере. –

3

Если вы нажимаете на AWS ECR, как и я, может быть, что докер на вашем локальном компьютере необходимо перезагрузить. См нить о AWS ECR медлительности:

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

Это может повлиять на другие платформы. Кажется, что около 1.12.1 на Mac, во всяком случае, есть некоторые проблемы с медлительностью, которые уходят с перезагрузкой Docker.

Смежные вопросы