Het is ook gemakkelijk in Kubernetes. Je kunt het als volgt doen,
- Zet uw
init.sqlbestand naar een Kubernetes-volume . - Monteer dit volume in
/docker-entrypoint-initdb.ddirectory van uw mysql-pod.
Hier is een voorbeeld van een yaml-bestand:mysql-init-demo.yaml
U kunt ook een init-container . gebruiken om init.sql te downloaden bestand naar een Kubernetes-volume dat is gekoppeld op /docker-entrypoint-initdb.d directory van mysql-container.
UPD: Zoals je in update hebt aangegeven, zal de oplossing die je hebt genoemd niet voor jou werken. Ik denk dat init-container aanpak het beste bij u past. Hier is hoe u het kunt doen:
- Maak een pvc. Laat de naam is
init-script. -
Voeg nu een
init-containertoe naar uw mysql-pod. Koppel ditinit-scriptpvc in een directory van dezeinit-container. Configureer uwinit-containerzodat het uwinit.sql. downloadt bestand in deze map. -
Koppel het
init-scriptin mysql-container op/docker-entrypoint-initdb.d
Laat het me weten als je een voorbeeld nodig hebt met init-container benadering.
UPD-2: Ik heb een voorbeeld toegevoegd voor init-container nadering. Je kunt het hier
vinden .