Развертывание NodeJS Express API в AWS - PullRequest
0 голосов
/ 23 июня 2018

Я использовал CodeFresh для создания своего Docker Image и отправил его в AWS ECR.

enter image description here

Я проверяю свой ECR, я вижу, что нажатие успешно выполнено,

enter image description here

Я ввожу SSH в свой EC2, я не вижу там никакого контента.

enter image description here


Обновление

[ec2-user@ip-10-0-0-47 share]$ docker ps                                                                                                                            
CONTAINER ID        IMAGE                                                    COMMAND             CREATED             STATUS              PORTS               NAMES  
1e4d4eae6520        616934057156.dkr.ecr.us-east-2.amazonaws.com/bheng-api   "sh cmd.sh"         29 hours ago        Up 29 hours         3002/tcp            ecs-api-1-bheng-api-88ef95c7ddc993badf01                                                                                                                                   
44b78781d487        amazon/amazon-ecs-agent:latest                           "/agent"            30 hours ago        Up 30 hours                             ecs-agent                                                                                                                                                                  
[ec2-user@ip-10-0-0-47 share]$                                                                                                                                      
[ec2-user@ip-10-0-0-47 share]$                                                                                                                                      
[ec2-user@ip-10-0-0-47 share]$ docker images                                                                                                                        
REPOSITORY                                               TAG                 IMAGE ID            CREATED             SIZE                                           
616934057156.dkr.ecr.us-east-2.amazonaws.com/bheng-api   latest              41e9eaa2aff2        29 hours ago        952MB                                          
amazon/amazon-ecs-agent                                  latest              622111e45fde        6 weeks ago         29.4MB                                         
amazon/amazon-ecs-pause                                  0.1.0               b875fd8f097a        6 weeks ago         963kB                                          
[ec2-user@ip-10-0-0-47 share]$                                                                                                                                      
[ec2-user@ip-10-0-0-47 share]$                                                                                                                                      
[ec2-user@ip-10-0-0-47 share]$

Это группа безопасности моего EC2

enter image description here

PM2

Use --update-env to update environment variables
[PM2] Applying action restartProcessId on app [all](ids: 0)
[PM2] [index](0) ✓
┌──────────┬────┬──────┬───────┬────────┬─────────┬────────┬─────┬───────────┬──────┬──────────┐
│ App name │ id │ mode │ pid   │ status │ restart │ uptime │ cpu │ mem       │ user │ watching │
├──────────┼────┼──────┼───────┼────────┼─────────┼────────┼─────┼───────────┼──────┼──────────┤
│ index    │ 0  │ fork │ 23901 │ online │ 1       │ 0s     │ 0%  │ 12.8 MB   │ node │ disabled │
└──────────┴────┴──────┴───────┴────────┴─────────┴────────┴─────┴───────────┴──────┴──────────┘

1 Ответ

0 голосов
/ 23 июня 2018

Первое, что нужно

Выполнение ls не означает, что оно покажет образ докера.

Если образы докера успешно извлекаются, проверьте его с помощью следующей команды.

docker images

Это напечатает все изображения, которые работают в этом экземпляре контейнера ec2.что-то вроде 56789.dkr.ecr.us-east-2.amazonaws.com/bheng-api:latest.

Что касается отладки, вам необходимо проверить, работает ли ваш докер-контейнер.

docker ps

Это напечатает работающий контейнер.

скопируйте идентификатор контейнера и выполните эту команду.

docker exec -it {container_id} bash|ash

журналы докера

docker logs  {container_id}

Вы также можете проверить, как работают изображения, назначив роль вашейВставьте контейнер в контейнер и выполните следующую команду.

docker run -it --rm -p 80:80 56789.dkr.ecr.us-east-2.amazonaws.com/bheng-api:latest

Опять я упомяну шаги

  1. create ECR и push-ur ur image
  2. createОпределение задачи
  3. создать службу, которая запускает экземпляр определения этой задачи.без нашего сервиса не будет ничего, как изображение контейнера или докера.Как только вы создадите службу, вы увидите образ докера в вашем экземпляре ec2.

Вы также можете просматривать события задач с помощью консоли AWS в разделе ECS -> cluster -> service -> tasks

Если что-то пошло не так, вы увидите в таких событиях, как

enter image description here

Если все в порядке, то

enter image description here

Полное изображение

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...