【问题标题】:How do you get a package manager in the Minikube VM (KVM2)?如何在 Minikube VM (KVM2) 中获得包管理器?
【发布时间】:2020-08-21 16:40:10
【问题描述】:

我已经使用 minikube start --driver=kvm2 创建了一个简单的 kubernetes 集群和 minikube,然后使用 minikube ssh ssh 进入 VM。

我在 minikube VM 和一些 pod 之间使用卷挂载,以便我可以共享一个大型数据集。但是,我需要安装 python 来下载这个数据集(到 VM 上)。通常我会使用apt-get 来安装python,但VM 没有安装它。我也无法使用dpkg 安装apt-get,因为dpkg 也不存在。

uname -r 的输出为4.19.114cat /etc/os-release 的输出为:

NAME=Buildroot
VERSION=2019.02.11
ID=buildroot
VERSION_ID=2019.02.11
PRETTY_NAME="Buildroot 2019.02.11"

有人知道我如何在 VM 中安装包管理器吗?

【问题讨论】:

  • 您是否尝试将包含这些文件的本地目录挂载到 minikube 中(使用minikube mount)?
  • 我过去曾尝试过,但它不适用于大型数据集。正如 minikube 网站所说的 9P Mounts,它们不能很好地处理大量文件。我最终切换到virtualbox 作为我的驱动程序,它将/home 文件夹安装到VM 内的/hosthome
  • @LukeThistlethwaite 你有没有想过如何在 VM 中获取包管理器?

标签: minikube kvm buildroot


【解决方案1】:

有一种方法可以对 minikube 映像进行自定义配置,但这需要配置映像。这个document 展示了如何构建镜像和修改 buildroot 组件。您可以添加内核模块或一些第三方包。您可能还想查看this 案例,而 minikube 映像中需要 tcpdump。

使用minikube mount 挂载文件的另一种方法:

minikube mount <source directory>:<target directory>

或使用本地驱动程序安装之一(KVM 目前不支持):

|虚拟盒子 | Linux | /主页 | /hosthome

|虚拟盒子 | macOS | /用户 | /用户

|虚拟盒子 |窗户 | C://用户 | /c/用户 |

| VMware 融合 | macOS | /用户 | /用户

第三个选项是使用initContainer

Pod 中的应用容器之前运行的专用容器。初始化容器可以包含应用映像中不存在的实用程序或设置脚本。

您可以使用 init 容器使用您的 pod/部署所需的数据预先填充一些卷。这是一个很好的document,它展示了如何做到这一点。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-05-22
    • 2020-07-17
    • 1970-01-01
    • 1970-01-01
    • 2021-11-10
    • 2016-07-25
    • 2015-12-18
    相关资源
    最近更新 更多