Но я не могу точно сказать, затраченное время - это время загрузки изображения или что-то еще
Не уверен, что вы можете рассчитать время извлечения изображения из AWS событий ECS, как это сделал я не найти его в событии ECS , но один из простейших подходов, который вы можете попробовать, - это загрузить руководство по изображениям на свой экземпляр ECS, которое даст более точную оценку, используя time
с docker pull
.
time docker pull alpine
Using default tag: latest
latest: Pulling from library/alpine
Digest: sha256:185518070891758909c9f839cf4ca393ee977ac378609f700f60a771a2dfe321
Status: Image is up to date for alpine:latest
real 0m5.789s
user 0m0.033s
sys 0m0.039s
Я также хотел бы знать, использует ли он кешированный образ или из удаленного репозитория. Есть ли способ сделать это?
Вы можете управлять этим поведением, используя ECS_IMAGE_PULL_BEHAVIOR
эту переменную ECS, поскольку по умолчанию она будет вытягивать изображение каждый раз, поэтому вы можете использовать prefer-cached
, если хотите для уменьшения времени запуска.
ECS_IMAGE_PULL_BEHAVIOR
Example values: default | always | once | prefer-cached
Значение по умолчанию Linux: по умолчанию
Значение по умолчанию Windows: по умолчанию
Поведение, используемое для настройки процесса извлечения образа для ваших экземпляров контейнера. Ниже описаны дополнительные варианты поведения:
Если указано по умолчанию , изображение извлекается удаленно. Если получение изображения завершается неудачно, контейнер использует кэшированное изображение на экземпляре.
Если указано всегда , изображение всегда извлекается удаленно. Если получение изображения не удается, задача не выполняется. Эта опция гарантирует, что всегда будет загружаться последняя версия образа. Любые кэшированные изображения игнорируются и подлежат процессу автоматической очистки.
Если указано один раз , изображение извлекается удаленно, только если оно не было извлечено предыдущей задачей на тот же экземпляр контейнера или если кэшированный образ был удален в процессе автоматической очистки образа. В противном случае используется кэшированное изображение в экземпляре. Это гарантирует, что не будет предпринято никаких ненужных попыток извлечения изображений.
Если указано предпочитаемое кэширование , изображение извлекается удаленно, если кэшированного изображения нет. В противном случае используется кэшированное изображение на экземпляре . Автоматическая очистка образа отключена для контейнера, чтобы гарантировать, что кэшированный образ не будет удален.
ecs-agent-config
amazon-ecs -adds-options-to-ускорение-время-запуска-контейнера