Я не могу найти никакой документации по порядку запуска (возможно, я просто не там ищу).
На стороне Docker есть все данные в Dockerfile, которые выполняются вместе, а затем запись CMD, которая запускается после этого, чтобы фактически запустить сервер.
Я хочу узнать, когда относительно этого запускаются команды в ebextensions?
Это происходит до того, как происходит что-либо из Dockerfile? После основной части Dockerfile, но до CMD или после всего этого?
решение1
Эта страница полезна:Настройка программного обеспечения на серверах Linux | AWS Elastic Beanstalk
В разделе «Команды» написано «запустить до настройки приложения и веб-сервера и извлечения файла версии приложения».
В разделе «Команды контейнера» указано: «запускать после настройки приложения и веб-сервера и извлечения архива версии приложения, но до развертывания версии приложения».
Экспериментируя, я думаю, что это выглядит так:
- Запуск команд ebextensions
- Собрать образ Docker как «aws_beanstalk/staging-app»
- Запуск команд контейнера ebextensions
- Переименуйте образ в aws_beanstalk/current-app.
- Запустить изображение
Я могу успешно вызвать run на образе staging-app из команд контейнера, что мне и было нужно.