развернуть серверное приложение в докере - PullRequest
0 голосов
/ 10 февраля 2019

Я создал небольшой сервис, использующий инфраструктуру без обслуживания, следуя этому руководству https://serverless.com/blog/how-to-create-a-rest-api-in-java-using-dynamodb-and-serverless/. Я использую «AWS Lambda», «APIGateway» и «DynamoDB».Я хочу иметь возможность развернуть свой сервис в Docker-контейнере, чтобы я мог проверить свои API и DynamodB локально.Я хочу иметь возможность отправлять команды curl на мой локальный хост и видеть ответ.Как мне это сделать?Существуют ли учебные пособия или пошаговое руководство?

Ответы [ 2 ]

0 голосов
/ 11 февраля 2019

Используйте Sam local для лямбда-части и DynamoDB local для части DynamoDB.

Кроме того, однажды в AWS вы сможете уйти без APIшлюз подключает ELB к функциям Lambda .

0 голосов
/ 10 февраля 2019

Я не понимаю вашу цель.Вся цель Serverless состоит в том, чтобы «не управлять серверами».Зачем ты это сделал тогда?Скорее создайте отдельную среду тестирования на самом AWS, чтобы протестировать Serverless.Шлюзы API, Lambda и DynamoDB - все это специфические сервисы AWS.Вы делаете свою задачу более сложной, чем легкой, думая о создании клона DynamoDB, Lambda, API-шлюза внутри докера.Вам действительно нужно много работать над созданием интеграции, аналогичной интеграции API Gateway-> Lambda, даже если вы используете MongoDB или Cassandra вместо DynamoDB.(Даже если вы просто возьмете такую ​​масштабируемость на картинку).Если вы предпочитаете изучать создание таких веб-сервисов в Docker, вы можете использовать что-то вроде образа mongo db docker (непосредственно из концентратора Docker) вместо DynamoDB

Обновление: вы можете использовать https://hub.docker.com/r/amazon/dynamodb-local/ дляDynamoDB хотя.Первый запуск изображения произошел шесть месяцев назад.

Для Lambda вы можете попробовать https://github.com/lambci/docker-lambda и посмотреть, работает ли он.

...