[Документация Yandex Cloud](../../../index.md) > [Yandex Cloud Registry](../../index.md) > [Концепции](../index.md) > [Артефакты](index.md) > Docker-образ

# Docker-образ

_Docker-образ_ — шаблон для создания Docker-контейнеров. Представляет собой исполняемый пакет, содержащий все необходимое для запуска приложения: код, среду выполнения, библиотеки, переменные окружения и файлы конфигурации.

[Docker-образ](https://yandex.cloud/ru-kz/blog/posts/2022/03/docker-containers) состоит из слоев. Каждое изменение записывается в новый слой.

* При загрузке или скачивании Docker-образа, операции производятся только с теми слоями, которые были изменены.
 
* Слои исходного Docker-образа являются общими между всеми его версиями и не дублируются.

## Управление версиями {#version}

Управление версиями Docker-образа осуществляется с помощью тегов и хешей.

_Тег_ — присваивается пользователем. Тег должен быть уникален в пределах одного [реестра](../registry.md) и может быть изменен. Если тег не был указан, при загрузке Docker-образа в реестр, Docker CLI по умолчанию устанавливает **latest**.

{% note warning %}

Тег `latest` **не означает**, что помеченная им версия Docker-образа была загружена последней.

{% endnote %}

Рекомендуется не перезаписывать теги, а использовать для каждой версии Docker-образа уникальный тег. Это позволяет использовать одну версию Docker-образа на всех ВМ с одинаковой спецификацией и облегчает поиск причины проблемы.

У одного Docker-образа может быть несколько тегов. Если вы загружаете новую версию Docker-образа с уже существующим тегом, он будет переиспользован — удален со старой версии Docker-образа и записан на новую.

_Хеш_ — генерируется автоматически, является уникальным и однозначно определяет версию Docker-образа.

Обратиться к определенной версии Docker-образа можно одним из способов:
* `<реестр>/<имя_образа>:<тег>`
* `<реестр>/<имя_образа>@<хеш>`

Docker-образ и все его версии хранятся в реестре.

#### Полезные ссылки {#see-also}

[Поддерживаемые типы артефактов](index.md#artifacts)