当我在Ubuntu Docker容器中运行/sbin/ebtables --list
时,出现以下消息:
root@500790dca629:/core-release-4.8# /sbin/ebtables --list
modprobe: ERROR: ../libkmod/libkmod.c:557 kmod_search_moddep() could not open moddep file '/lib/modules/4.4.43-boot2docker/modules.dep.bin'
The kernel doesn't support the ebtables 'filter' table.
如何在Docker中启用ebtables?
最佳答案
默认情况下,Docker不支持此功能。但是您可以在启动docker容器以支持Linux功能时传递以下参数:
--cap-add Add Linux capabilities
--cap-drop Drop Linux capabilities
对于iptables,ebtables等网络功能,您必须添加
NET_ADMIN
功能,例如:docker run -it --cap-add=NET_ADMIN ubuntu bash
如果未安装
ebtables
软件包,则使用以下命令在容器中安装ebtables
软件包: sudo apt-get update
sudo apt-get install ebtables
然后列出ebtables:
/sbin/ebtables --list
Bridge table: filter
Bridge chain: INPUT, entries: 0, policy: ACCEPT
Bridge chain: FORWARD, entries: 0, policy: ACCEPT
Bridge chain: OUTPUT, entries: 0, policy: ACCEPT
关于docker - 如何在Docker内部使用ebtables?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42060254/