В Kubernetes също е лесно. Можете да го направите, както следва,
- Поставете своя
init.sql
файл в том на Kubernetes . - Монтирайте този том в
/docker-entrypoint-initdb.d
директория на вашия mysql модул.
Ето примерен yaml файл:mysql-init-demo.yaml
Можете също да използвате init-container
за да изтеглите init.sql
файл в том Kubernetes, който е монтиран на /docker-entrypoint-initdb.d
директория на контейнера mysql.
UPD: Както сте посочили в актуализацията, че препоръчаното от вас решение няма да работи за вас. Мисля, че init-container
подходът ще бъде най-подходящ за вас. Ето как можете да направите:
- Създайте pvc. Нека името му е
init-script
. -
Сега добавете
init-container
към вашия mysql pod. Монтирайте тозиinit-script
pvc в някаква директория на тозиinit-container
. Конфигурирайте вашияinit-container
така че да изтегли вашияinit.sql
файл в тази директория. -
Монтирайте
init-script
в контейнера mysql в/docker-entrypoint-initdb.d
Кажете ми, ако имате нужда от проба с init-container
подход.
UPD-2: Добавих проба за init-container
Приближаване. Можете да го намерите тук
.