Развертывание образа Docker в AWS ECS

#amazon-web-services #docker

#amazon-веб-сервисы #docker

Вопрос:

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

Я попытаюсь рассказать вам о том, что я делал при настройке.

Зашел в ECS, создал кластер, выбрал пользовательский образ, путь к образу docker.io/browserless/chrome:latest для https://hub.docker.com/r/browserless/chrome

Добавлены порты 80 и 8080 для сопоставления портов.

Оставил все по умолчанию / пустым.

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

Безуспешно пытаюсь подключиться к общедоступному IP-адресу (белый экран)

Я проверяю cloud watch и вижу эту ошибку

        /bin/sh: 1: cannot create 
      /usr/local/apache2/htdocs/index.html: Directory nonexistent
  

Не уверен, как это исправить.

Спасибо

Ответ №1:

Немного поиграв с этим, я устранил проблему.

Поскольку контейнер docker запущен на порту 3000, мне нужно было добавить 3000 в группу безопасности и перейти на общедоступный IP-адрес с портом 3000.

Комментарии:

1. Это правильно, вы также можете добавить сопоставление из 80:3000 , если хотите сохранить 80 в качестве порта.

Ответ №2:

Возможно, вы столкнулись с некоторой проблемой с разрешениями внутри контейнера, где он пытается создать index.html но не удается из-за недостаточных разрешений, вы могли бы попробовать выполнить CHMOD 755 через каталог, другим способом отладки было бы запустить docker локально и посмотреть, столкнетесь ли вы с той же проблемой, затем вы можете добавить CHMOD (если это проблема) в свой dockerfile для создания нового образа. Надеюсь, это даст вам некоторое представление

Комментарии:

1. Запущенный docker локально работает без каких-либо проблем. Не уверен, как отредактировать файл docker, чтобы включить предварительные изменения, поскольку я извлекаю изображение из docker hub в настройках ECS

2. Создается ли образ docker пользователем? или вы используете стороннюю программу?

3. Не мной. Я связал его сверху. Это пакет без браузера

Ответ №3:

Основной причиной этой ошибки может быть команда по умолчанию в определениях контейнеров, создайте новое определение задачи и в настройках определения контейнера перейдите в раздел Среда и проверьте команду, если в поле есть какая-либо команда по умолчанию, удалите / обновите ее.