Передача образа Docker в AWS ECR


Написано с

Камерон Гибсон

Версии

Homebrew 3.4.7
Nginx 1.21.6
Ngrok 3.0.2
AWS CLI 2.5.8

О AWS ECR

AWS ECR – это служба репозиториев, подобная DockerHub.
Вы можете создать свой собственный репозиторий, публичный или частный.

Как

  1. Подготовьте образ Docker, проверьте его на локальном компьютере
  2. Отправить образ в ECR
  3. Извлечь образ ECR и проверить его на локальном компьютере
  4. Удалить образ ECR

1. Подготовьте образ Docker, проверьте его на локальном компьютере

Убедитесь, что у вас уже есть образ Docker, чтобы вытолкнуть его.

Если вы интересуетесь React,
посмотрите эту статью: Dockerizing React App

У вас нет никаких образов, и вы просто хотите создать простой образ,
проверьте это: Натяните образ Nginx и запустите контейнер

2. Поместите в AWS ECR

① Создайте публичный репозиторий образов в консоли ECR

② Нажмите “Просмотреть команду push”.

③ Скопируйте & запустите первую команду с помощью AWS CLI и войдите в AWS.

aws ecr-public get-login-password --region <your region> | docker login --username AWS --password-stdin public.ecr.aws/~~~

Login Succeeded
Войдите в полноэкранный режим Выход из полноэкранного режима

※ Пропустите 2-ю команду, у нас уже есть образ на локальном компьютере.

④ Скопируйте & выполните 3-ю команду и пометьте изображение для отправки в ECR.

docker tag <your local image name>:latest public.ecr.aws/~~~~~/<your ECR repository name>:latest
Вход в полноэкранный режим Выйти из полноэкранного режима

⑤ Копировать & выполните 4-ю команду и переместите изображение в ECR

$ docker push public.ecr.aws/~~~~~/<your ECR repository name>:latest

# output
The push refers to repository [public.ecr.aws//~~~~~/<your ECR repository name>]
6532d1bd92d7: Pushing [========================================>          ]    181MB/223.4MB
1bfe2f2c209c: Pushing [==============================>                    ]  156.5MB/259.2MB
5bc57cb39f11: Pushed 
1f63745992bb: Pushed 
fea31d3e0c85: Pushed 
0fc8a3e8b32a: Pushed 
99307ceff565: Pushed 
5cc685c4cd61: Pushed 
6fd97e423126: Pushed 
ca58f1c44290: Pushing [==================>                                ]  188.3MB/510.5MB
957a6eed8d1f: Pushing [==========================================>        ]  123.8MB/145.5MB
85fe00380881: Pushing [==================================================>]  17.87MB
5d253e59e523: Waiting 
b9fd5db9c9a6: Waiting 
Войти в полноэкранный режим Выйти из полноэкранного режима

⑥ Вернитесь в консоль ECR.
Щелкните имя своего хранилища и подтвердите успешное перемещение образа в ECR.

3. Извлеките образ ECR и проверьте его на локальном компьютере

① Удалите изображение, которое вы пометили.

docker rmi public.ecr.aws/~~~~~/<your ECR repository name>:latest
Войдите в полноэкранный режим Выйти из полноэкранного режима

② Скопируйте URI изображения, которое вы ввели в консоль ECR, и извлеките изображение.
URI изображения должен быть точно таким же, но лучше знать, где можно проверить URI изображения.

$ docker pull <URI you copied at ECR console>

# output
latest: Pulling from ~~~~~
Digest: sha256:~~~~~~~~~~~~~~~~~~~~
Status: Downloaded newer image for <URI you copied at ECR console>
<URI you copied at ECR console>
Вход в полноэкранный режим Выйти из полноэкранного режима

③ Запустите контейнер, который вы вытащили из ECR.

docker run -p 3001:3000 <URI you copied at ECR console>
Войти в полноэкранный режим Выйти из полноэкранного режима

③ Подтвердите успешный запуск контейнера.
Доступ к сайту http://localhost:3001

Спасибо.

Надеюсь, это поможет.
Спасибо, что прочитали.

Оцените статью
Procodings.ru
Добавить комментарий