
Entonces, en realidad quiero iniciar mi clúster de minikube con un directorio especial montado en él, en/data. Este directorio contiene mis datos de base de datos.
Para esto intento:
minikube start \
--driver=docker \
--extra-config=apiserver.service-node-port-range=1-35000 \
--disk-size=5000mb \
--mount \
--mount-string="${PWD}/srcs/mysql/datas:/data"
En realidad hay opciones --mount
y --mount-string="${PWD}/srcs/mysql/datas:/data"
no parece funcionar. No se muestran salidas de advertencia o error, pero cuando me conecto a la máquina y enumero los archivos en/data no aparece nada. Mi directorio no está montado.
Si monto el directorio con: minikube mount ${PWD}/srcs/mysql/datas:/data
funciona y puedo enumerar mis datos en/data. (Pero tengo muchas ganas de ejecutarlo al inicio y ahora qué estoy haciendo mal).
Respuesta1
Publicar esta respuesta wiki de la comunidad para indicar que el problema se resolvió mediante:
Lo volví a intentar después de eliminar la carpeta de configuración de Minikube "~/.minikube" y actualicé a Minikube v1.19.0 y funciona:
minikube start --mount --mount-string="$(pwd):/src
"
Para comprobar el escenario completo, lo reproduje con la siguiente configuración:
Ubuntu 20.04
Docker 20.10.7
KVM 4.2.1
Minikube
:v1.22.0
(probé ambas versiones con los mismos pasos)v1.19.0
Creo que el problema se resolvió no eliminando el ~/.minikube
directorio o actualizando minikube
, sino con unacambiar a la carpeta de destino que se montó.
Suponiendo la siguiente configuración:
$ mkdir ~/test
$ echo "General Kenobi!" > ~/test/hello_there.txt
$ minikube start --mount --mount-string ~/test:/data
$ minikube ssh
$ ls -al /data
total 8
drwxr-xr-x 2 root root 4096 Jul 13 11:45 .
drwxr-xr-x 1 root root 4096 Jul 13 11:45 ..
$ minikube start --mount --mount-string ~/test:/src
<-- note el cambio de destino$ minikube ssh
$ ls -al /src
<-- note el cambio de destino
total 12
drwxrwxr-x 2 1003 1004 4096 Jul 13 11:42 .
drwxr-xr-x 1 root root 4096 Jul 13 11:47 ..
-rw-rw-r-- 1 1003 1004 16 Jul 13 11:42 hello_there.txt
Como puede verse, los archivos se mostraron correctamente cuando se montaron en un directorio distinto de /data
.
¡Una nota al margen!
El escenario anterior estaba presente solo con
--driver=docker
.--driver=kvm2
montó los datos en/data
la carpeta con éxito.
Estepodríaestar relacionado con la persistencia de algunos minikube
directorios. Puede encontrar más información sobre esto aquí:
¡Otra nota al margen!
$ minikube mount
con una/data
carpeta de destino funcionó correctamente.
Recursos adicionales: