无法在Debian Stretch Docker映像上安装保险丝

时间:2018-12-27 02:14:53

标签: docker debian fuse gcsfuse

我正在尝试使用dir在Docker映像中融合gcsfuse。我正在使用Debian拉伸图像,无法使用fuse软件包。

我尝试通过fuse安装apt-get以及通过git repo从源代码进行构建。两者都有各自的问题。

1:apt-get之后,我收到fuse已成功安装的提示。

root@a7d6f712fab9:/queue# apt-get install fuse
Reading package lists... Done
Building dependency tree
Reading state information... Done
fuse is already the newest version (2.9.7-1+deb9u2).
0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.
root@a7d6f712fab9:/queue# apt-get install libfuse-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
libfuse-dev is already the newest version (2.9.7-1+deb9u2)

但是在运行modprobe fuse时(尝试gcsfuse挂载时失败):

root@a7d6f712fab9:/queue# modprobe fuse
modprobe: ERROR: ../libkmod/libkmod.c:586 kmod_search_moddep() could not open moddep file '/lib/modules/4.9.125-linuxkit/modules.dep.bin'
modprobe: FATAL: Module fuse not found in directory /lib/modules/4.9.125-linuxkit

2::从来源使用tar.gz时,meson仅作为版本0.37可用,而libfuse需要介子> {{ 1}}以正确构建(从早期版本开始)。

这是我的Dockerfile:

0.38

我希望FROM python:3.6-slim RUN apt-get update \ && apt-get install -y libfuse-dev \ curl \ gnupg \ apt-utils \ lsb-release \ kmod RUN export GCSFUSE_REPO=gcsfuse-`lsb_release -c -s` \ && echo "deb http://packages.cloud.google.com/apt $GCSFUSE_REPO main" | tee /etc/apt/sources.list.d/gcsfuse.list \ && curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add - RUN apt-get update \ && apt-get install -y gcsfuse COPY . /queue WORKDIR /queue 可以正常工作,或者希望我了解如何通过modprobe标识封装的方式构建保险丝/ modprobe。

谢谢!

1 个答案:

答案 0 :(得分:1)

Docker容器使用主机内核。因此,如果需要加载内核模块,则必须将其加载到主机上,而不是Docker中。