W Kubernetes jest to również łatwe. Możesz to zrobić w następujący sposób,
- Umieść swój
init.sql
plik do wolumin Kubernetes . - Zamontuj ten wolumin w
/docker-entrypoint-initdb.d
katalog twojego mysql pod.
Oto przykładowy plik yaml:mysql-init-demo.yaml
Możesz także użyć init-container
aby pobrać init.sql
plik do woluminu Kubernetes, który jest zamontowany w /docker-entrypoint-initdb.d
katalog kontenera mysql.
UPD: Jak określiłeś w aktualizacji, rozwiązanie, które poleciłeś, nie będzie dla Ciebie działać. Myślę, że init-container
podejście będzie dla Ciebie najbardziej odpowiednie. Oto, jak możesz to zrobić:
- Utwórz pcv. Niech nazywa się
init-script
. -
Teraz dodaj
init-container
do twojego mysql pod. Zamontuj teninit-script
pvc w jakimś katalogu tegoinit-container
. Skonfiguruj swójinit-container
tak, że pobierze twójinit.sql
plik w tym katalogu. -
Zamontuj
init-script
w kontenerze mysql w/docker-entrypoint-initdb.d
Daj mi znać, jeśli potrzebujesz próbki z init-container
podejście.
UPD-2: Dodałem próbkę dla init-container
zbliżać się. Znajdziesz go tutaj
.