![](https://artem.services/wp-content/uploads/2018/11/AWS-Logo.png)
Ресайз изображения на лету используя:
- Gateway API
- Lambda
- CloudFront
- S3 Bucket
При этом в S3 Bucket будет только оригинал изображения.
![](https://artem.services/wp-content/uploads/2019/06/serverless-image-handler-architecture.043b4d76d253e5fe669791a85558b9908748e27b.png)
Описание работы и CloudFormation template можно найти тут.
Скачиваем CloudFormation template с сайта или же по этой ссылке.
![](https://artem.services/wp-content/uploads/2019/06/Screen-Shot-2019-06-21-at-12.45.24-PM-300x263.png)
Заходим в консоль AWS
В сервисах находим "CloudFormation" — "Create stack"
Задаем имя нашему стеку, к примеру "image-resize-staging"
У нас готовый шаблон, поэтому выбираем "Template is ready"
![](https://artem.services/wp-content/uploads/2019/06/Screen-Shot-2019-06-21-at-12.46.39-PM.png)
Загружаем шаблон с файла.
![](https://artem.services/wp-content/uploads/2019/06/Screen-Shot-2019-06-21-at-12.46.52-PM.png)
SourceBuckets — пишем имя S3 Bucket, где хранятся оригиналы изображений.
CORS — если нужны, указываем
Так же будет предложено поставить веб интерфейс, для ознакомления с функциями ресайза.
Permission — если не указывать ничего, будет создана роль на основе прав текущего логина в AWS консоли.
![](https://artem.services/wp-content/uploads/2019/06/Screen-Shot-2019-06-21-at-12.51.04-PM.png)
Создаем стек. Нужно дождаться пока создастся CloudFront, это порядка 15 минут.
![](https://artem.services/wp-content/uploads/2019/06/Screen-Shot-2019-06-21-at-12.51.48-PM.png)
После завершения создания во вкладке "Outputs" можно посмотреть URL CloudFront'а
Так же к CloudFront можно привязать домен через CNAME.