У меня есть сценарий заполнения, который должен запускаться при первом запуске приложения.Только в первый раз.
Приложение работает как контейнер Docker.В настоящий момент я делаю это до запуска приложения django, когда контейнер запускает сценарии заполнения.
Это приводит к тому, что при перезапуске контейнера снова запускаются сценарии заполнения, что приводит к дублированию записей.
Какую стратегию я могу использовать, чтобы избежать повторного заполнения базы данных?У меня есть пара идей:
- отметка в файловой системе контейнера.Очень легко реализовать, но я не уверен, что это переживет перезапуск контейнера?В любом случае я отказался от этого, потому что он определенно не переживет перестройку контейнера.
- отметка в базе данных.Это кажется слишком сложным для реализации, но кажется наиболее надежным решением: оно будет работать только тогда, когда БД не помечена, и автоматически обнаруживать всякий раз, когда БД поцарапана.
- пометить в постоянном томе.Это мое предпочтительное решение.Единственная незначительная проблема заключается в том, что царапины базы данных не будут обнаружены (но я могу справиться с этим вручную)
Есть ли у вас какие-либо другие идеи, как этого добиться?