minikube - 如何在 Minikube VM (KVM2) 中获得包管理器?
问题描述
我使用 minikube 创建了一个简单的 kubernetes 集群,minikube start --driver=kvm2
然后使用minikube ssh
.
我在 minikube VM 和一些 pod 之间使用卷挂载,以便我可以共享一个大型数据集。但是,我需要安装 python 来下载这个数据集(到 VM 上)。通常我会apt-get
用来安装python,但VM没有安装它。我不能apt-get
使用dpkg
任何一个安装,因为dpkg
也不存在。
is的输出和uname -r
is4.19.114
的输出cat /etc/os-release
:
NAME=Buildroot
VERSION=2019.02.11
ID=buildroot
VERSION_ID=2019.02.11
PRETTY_NAME="Buildroot 2019.02.11"
有人知道我如何在 VM 中安装包管理器吗?
解决方案
有一种方法可以对 minikube 映像进行自定义配置,但这需要配置映像。本文档展示了如何构建镜像和修改 buildroot 组件。您可以添加内核模块或一些第三方软件包。您可能还想查看这种情况,而 minikube 映像需要 tcpdump。
使用以下方式挂载文件的替代方法minikube mount
:
minikube mount <source directory>:<target directory>
或使用本地驱动程序安装之一(KVM 目前不支持此功能):
| 虚拟盒子 | Linux | /主页 | /hosthome
| 虚拟盒子 | macOS | /用户 | /用户
| 虚拟盒子 | 窗户 | C://用户 | /c/用户 |
| VMware 融合 | macOS | /用户 | /用户
第三种选择是使用initContainer
在Pod中的应用容器之前运行的专用容器。初始化容器可以包含应用程序映像中不存在的实用程序或设置脚本。
您可以使用 init 容器使用 pod/部署所需的数据预先填充一些卷。这是一个很好的文档,展示了如何做到这一点。
推荐阅读
- java - 如何在字符串中插入斜杠?
- python - 使用 Python 将 JSON 文件分割成不同的时间截距
- error-handling - 注册新的 PHP 处理程序剪贴画
- r - 有时命令在升级到 R 4.0 和 Ubuntu 20.04 后不会终止
- java - 为什么java在创建方法时不允许我使用方法add()?
- flutter - 无法识别异常错误的来源:Flutter
- python - 将图像存储在内存中,然后写入磁盘
- docker - 如何通过主机名访问 docker 容器?(来自我的主机)
- c# - System.AggregateException 已被抛出
- heroku - 部署到 heroku 时出错:非法字符:'\ufeff'