Step 3 of 9

Elastic Container Registry: ECR

Для того, чтобы запускать docker контейнеры, их необходимо где-то хранить. Для таких целей AWS предоставляется сервис AWS ECR или попросту реестр контейнеров, аналог Docker Hub. Стоимость хранения 1 Гб в месяц $0.1, более подробно о тарифах можно узнать на странице: https://aws.amazon.com/ru/ecr/pricing/

Заливаем docker образ на ECR

Входите в ваш аккаунт AWS, и в верхнем левом углу нажимайте на Services, в поле ввода текста пишите ecr, выбирайте Elastic Container Registry:

В окне сервиса необходимо нажать на Create repository, для создания репозитория:

В окне создания репозитория необходимо указать название будущего репозитория, в моём случае это luigi-course, для простоты понимания 😎 Все настройки можно оставить по умолчанию, сейчас они для нас не имеют значения.

Поздравляю! Репозиторий создан! Следующим шагом мы загрузим докер образ в этот репозиторий. Если зайти в только что созданный реп, то справа в верхней части экрана есть кнопка View push commands. После нажания на кпоку появится диалоговое окно с подсказками по загрузке docker образа в новый репозиторий. Для работы с AWS через командную строку используется утилита aws-cli. Если у вас её по какой-то причине нет, то скачать можно отсюда.

Внимание! Если у вас утилита ругается на неизвестный параметр get-login-password при выполнении команды aws ecr get-login-password, то обновите aws-cli до самой последней версии.

Для начала необходимо авторизоваться (можно копировать команды прямо из диалогового окна):

aws ecr get-login-password --region eu-central-1 | docker login --username AWS --password-stdin 673049858489.dkr.ecr.eu-central-1.amazonaws.com/luigi-course

Если вы не собирали контейнер на этом шаге, то вам необходимо запустить сборку из места расположение проекта:

docker build -t luigi_course . 

Если докер образ ранее был собран, то достаточно проставить у него нужный для AWS тег:

docker tag luigi_course:latest 673049858489.dkr.ecr.eu-central-1.amazonaws.com/luigi-course:latest

Последний шаг это пуш в репозиторий:

docker push 673049858489.dkr.ecr.eu-central-1.amazonaws.com/luigi-course:latest

Если всё прошло удачно, то в AWS ECR вы увидите ваш залитый образ:

Он занимает 281 Мб. Если что-то у вас не получилось, смело задавайте вопросы в комментариях к уроку.

Comments