Папка с данными приложения в AWS Beanstalk - PullRequest
0 голосов
/ 28 октября 2019

Я перенесу существующее PHP-приложение в Elastic Beanstalk и у меня возник вопрос новичка. У моего приложения есть папка с данными, которая со временем увеличивается и может изменяться и может стать довольно большой. В настоящее время эта папка является подпапкой в ​​корневом каталоге приложения. В традиционной модели разработки я просто загружаю измененные PHP-файлы, используя ту же папку данных, как я могу сделать это в Elastic Beanstalk?

Я не хочу загружать и выгружать папку данных каждый разЯ развернул новую версию приложения. Как лучше всего это делать в AWS Beanstalk?

TIA

Peter

Ответы [ 2 ]

0 голосов
/ 28 октября 2019

Согласно документации AWS здесь , приложения Elastic Beanstalk запускаются на экземплярах EC2, у которых нет постоянного локального хранилища, в результате ваше приложение EB должно быть как можно без сохранения состояния и должно использовать постоянное хранилище из одногоиз предложений хранилища, предлагаемых AWS.

Распространенной стратегией для постоянного хранилища является использование Amazon EFS или Elastic File Service. Как отмечено в документации по использованию EFS с Elastic Beanstalk здесь :

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

Ваш EFS-диск, по сути, является подключенным сетевым диском. Файлы, хранящиеся в EFS, будут доступны во всех экземплярах, к которым подключена файловая система, и будут сохраняться после событий завершения и / или масштабирования экземпляра.

Подробнее об EFS можно узнать здесь , а такжеиспользуя EFS с Elastic Beanstalk здесь .

0 голосов
/ 28 октября 2019

Это вопрос постоянного развертывания.

Elastic BeanStalk поддерживает компакт-диск из AWS CodePipeline: https://aws.amazon.com/getting-started/tutorials/continuous-deployment-pipeline/

По адресу »со временем увеличивается и изменяется и может в настоящее время увеличиваться в размерах. является подпапкой в ​​корневом каталоге приложения ", вы можете использовать CodeCommit для создания версии кода с помощью Git. Если вы создадите версию папки данных с вашим приложением, развертывание будет включать ее.

Если данные являются чем-то, что вы можете выгрузить в хранилище объектов (S3) или базу данных (RDS / DynamoDB / etc), они будутЛучше практиковать это.

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