nai*_*l0x 5 kubernetes minikube
所以我实际上想启动我的 minikube 集群,并在 /data 上安装一个特殊目录。该目录包含我的数据库数据。
为此我尝试:
minikube start \
--driver=docker \
--extra-config=apiserver.service-node-port-range=1-35000 \
--disk-size=5000mb \
--mount \
--mount-string="${PWD}/srcs/mysql/datas:/data"
Run Code Online (Sandbox Code Playgroud)
实际上选项--mount似乎--mount-string="${PWD}/srcs/mysql/datas:/data"不起作用。没有显示警告或错误输出,但是当我连接到计算机并将文件列表到 /data 时,什么也没有出现。我的目录没有挂载。
如果我使用以下命令挂载目录:minikube mount ${PWD}/srcs/mysql/datas:/data它可以工作,并且我可以在 /data 中列出我的数据。(但我真的想在启动时启动它,现在我做错了什么)。
小智 3
发布此社区 wiki 答案以表明该问题已通过以下方式解决:
我在删除 Minikube 配置文件夹“~/.minikube”并更新到 Minikube v1.19.0 后重试,它可以工作:
minikube start --mount --mount-string="$(pwd):/src“
为了检查整个场景,我使用以下设置重现了它:
Ubuntu 20.04Docker 20.10.7KVM 4.2.1Minikube:
v1.22.0(使用相同的步骤测试了两个版本)v1.19.0我认为问题不是通过删除~/.minikube目录或升级来解决的minikube,而是通过更改已安装的目标文件夹来解决的。
假设以下设置:
$ mkdir ~/test$ echo "General Kenobi!" > ~/test/hello_there.txt$ minikube start --mount --mount-string ~/test:/data $ minikube ssh$ ls -al /datatotal 8
drwxr-xr-x 2 root root 4096 Jul 13 11:45 .
drwxr-xr-x 1 root root 4096 Jul 13 11:45 ..
Run Code Online (Sandbox Code Playgroud)
$ minikube start --mount --mount-string ~/test:/src <-- 注意目的地变化$ minikube ssh$ ls -al /src <-- 注意目的地变化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
Run Code Online (Sandbox Code Playgroud)
可以看出,当挂载到 .txt 以外的目录时,文件显示正确/data。
附注!
上述场景仅出现在
--driver=docker. 成功--driver=kvm2将数据安装到文件夹。/data
这可能minikube与某些目录的持久性有关。更多相关内容可以在这里找到:
另一个旁注!
$ minikube mount作为/data目标文件夹工作正常。
其他资源:
| 归档时间: |
|
| 查看次数: |
3264 次 |
| 最近记录: |