Det är enkelt i Kubernetes också. Du kan göra det enligt följande,
- Sätt din
init.sql
fil till en Kubernetes-volym . - Montera denna volym i
/docker-entrypoint-initdb.d
katalogen för din mysql-pod.
Här är ett exempel på en yaml-fil:mysql-init-demo.yaml
Du kan också använda en init-container
för att ladda ner init.sql
fil till en Kubernetes-volym som är monterad på /docker-entrypoint-initdb.d
katalog för mysql-behållare.
UPD: Som du har angett i uppdateringen kommer den lösning du har hänvisat till inte att fungera för dig. Jag tror init-container
tillvägagångssätt kommer att vara bäst lämpad för dig. Så här kan du göra:
- Skapa en pvc. Låt dens namn är
init-script
. -
Lägg nu till en
init-container
till din mysql-pod. Montera dettainit-script
pvc i någon katalog i dennainit-container
. Konfigurera dininit-container
så att den laddar ner dininit.sql
fil i den här katalogen. -
Montera
init-script
i mysql-behållaren på/docker-entrypoint-initdb.d
Låt mig veta om du behöver något prov med init-container
tillvägagångssätt.
UPD-2: Jag har lagt till ett exempel för init-container
närma sig. Du hittar den här
.