[#] Docker контейнер с данными на Postgres для интеграционного тестирования и лёгким расширением
habrabot(difrex,1) — All
2017-05-09 21:00:04


Про использование `Docker` и `Docker-compose` последнее время написано очень много, например рекомендую [недавнюю статью на Хабре][1], если вы до сих пор не прониклись. Это действительно очень удобно, а [в связке в ansible][2] особенно. И я его использую везде. От разработки, до автоматического интеграционного тестирования на `CI`. [Про использование в тестировании, тоже писали][3]. Это здорово и удобно. **Однако, для локальной разработки, для траблешутинга данных "как в продакшене" или тестирование производительности, на "объёмах близких в продакшену", хочется иметь под рукой образ, содержащий базу, "как в продакшене"!**



Соответственно, хочется, чтобы каждый разработчик, приступая к работе над проектом, мог запустить его одной командой, например:


./gradlew dockerRun

и приложение поднялось бы сразу со всеми необходимыми связанными контейнерами? А главное чтобы в нём уже были бы данные для большинства кейсов разработки и багфиксинга, стандартные пользователи и большинство работающих сервисов, над которыми сразу можно было бы приступить работать, не тратя времени на экспорт-импорт каких-то там образов или демоданных!



**_Как приятный бонус, ну разве не здорово иметь базу данных в несколько гигабайт и возможность откатиться к её исходному (или любому другому коммиту) состоянию в течении пары секунд?_**



Разумеется мы поговорим о написании `Dockerfile` для такого образа с данными, и некоторых подводных камнях этого процесса.

[Читать дальше →][4]

[1]: https://habrahabr.ru/post/322440/
[2]: https://habrahabr.ru/post/217689/
[3]: https://habrahabr.ru/post/275513/
[4]: https://habrahabr.ru/post/328226/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut