Alpine Linux 上不存在设备“ip_tables”

Alpine Linux 上不存在设备“ip_tables”

我正在尝试运行泊坞窗中的泊坞窗 (dind)(更具体地说,docker:22.06.0-beta.0-dind-rootless)在 VirtualBox 中运行的 Alpine Linux 主机上的映像,每当容器启动时,它都无法启动容器内的 Docker,并显示以下错误消息:

Signature ok
subject=CN = docker:dind client
Getting CA Private Key
Device "ip_tables" does not exist.
modprobe: can't change directory to '/lib/modules': No such file or directory
open: No such file or directory
[rootlesskit:child ] error: executing [[ip tuntap add name tap0 mode tap] [ip link set tap0 address ...]]: exit status 1

我发现问题不在 VirtualBox 部分,因为这个错误没有发生在 Arch Linux 主机上,所以它是 Alpine 特有的

由于 Docker 使用主机内核,我尝试通过 启用它modprobe ip_tables,但同样的错误仍然存​​在,是否有任何软件包可以在系统上启用这些内核模块,或者是我缺少的其他东西?

答案1

检查 Alpine 的库存内核是否正确后配置包括对 tun/tap 的支持,我发现它CONFIG_TUN作为一个模块包含在内,所以运行modprobe tun解决了问题

相关内容