AWS Elasti c Beanstalk Docker Отображение портов контейнера - PullRequest
0 голосов
/ 11 апреля 2020

У меня есть вопрос, связанный с отображением портов в Elasti c Beanstalk, несколько Docker -container-env.

Мой Dockerrun. aws. json выглядит так:

{
  "AWSEBDockerrunVersion": 2,
  "containerDefinitions": [
    {
      "name": "web",
      "image": "exampleimage",
      "hostname": "web",
      "essential": true,
      "memory": 128,
      "portMappings": [
        {
          "hostPort": 3000,
          "containerPort": 80
        }
      ]
    }
  ]
}

И мой веб-файл Docker выглядит так:

FROM node:alpine as builder

WORKDIR '/app'
COPY ./package.json ./
RUN npm install
COPY . .

FROM nginx
EXPOSE 80
COPY --from=builder /app/build /usr/share/nginx/html
# at the end its a nginx images

Означает ли это, что мой docker контейнер работает на порте 80, и я делаю его на хост-порту 3000?

Если на моем AWS Elasti c Beanstalk конечная точка имеет вид

url-something-like-this-xxxx.com

Как получить доступ к контейнеру ?

url-что-то вроде этого xxxx: 3000.com . ??

Спасибо большое!

1 Ответ

1 голос
/ 11 апреля 2020

Правильный синтаксис для доступа к порту, отличному от указанного в протоколе: //: Примеры

Доступ к веб-сайту через http через порт 3000

http://some-url.com: 3000

Доступ к веб-сайту через https через порт 8443

https://some-url.com: 8443

Также убедитесь, что группа безопасности подключена к вашему экземпляру или балансировщику нагрузки разрешает доступ через порт 3000 с вашего IP-адреса или 0.0.0.0/0, если вы хотите, чтобы он был опубликован c

Ссылка на руководство по обновлению групп безопасности.

https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html#AddRemoveRules

...