#amazon-web-services #docker #amazon-dynamodb #amazon-dynamodb-local
#amazon-web-services #docker #amazon-dynamodb #amazon-dynamodb-local
Вопрос:
В настоящее время у меня есть Dynamodb-local, запущенный в контейнере Docker с использованием образа amazon / dynamodb-local.
Контейнер запускается, и я могу вручную создать необходимые таблицы с помощью AWS CLI.
Однако на данном этапе мне нужно, чтобы таблицы были созданы при первоначальном запуске контейнера.
Я надеялся получить мысли о наилучшем подходе к решению этой проблемы — я думаю, мне все равно нужно будет использовать AWS CLI для создания таблиц.
Если я использую dockerfile, насколько я понимаю, мне нужно будет создать образ, содержащий следующее: — Python (для использования PIP для установки AWS CLI) — PIP — AWS CLI — DynamoDB Local
Я мог бы также создать таблицы, а затем создать образ dynamodb-local в этот момент, чтобы использовать его в качестве базового образа, но это потребовало бы создания нового образа каждый раз, когда у меня была новая таблица.
Вместо этого я надеялся создать образ, когда мне нужно будет запустить базу данных и (используя AWS CLI) прочитать JSON-файлы для необходимых таблиц и создать таблицы.
Любые советы о том, как другие в настоящее время обрабатывают этот сценарий?
Спасибо.
Ответ №1:
Я расширил dynamodb-local с помощью пользовательского интерфейса для управления таблицами:
docker run -p 8000:8000 -p 80:80 -v storage-volume:/storage -d awspilotcom/dynamodb-ui
проверьте изображение dynamodb-ui docker, и вот демонстрация пользовательского интерфейса
он также поддерживает шаблоны cloudformation.
Ответ №2:
Для dynamodb можно использовать том docker или общую папку — локальную папку данных:
docker run -p 8000:8000 -v my-volume:/dbstore amazon/dynamodb-local -jar DynamoDBLocal.jar -sharedDb -dbPath /dbstore