首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Docker中使用ebtables?

如何在Docker中使用ebtables?
EN

Stack Overflow用户
提问于 2017-02-06 12:19:33
回答 2查看 1.4K关注 0票数 1

当我在Ubuntu Docker容器中运行/sbin/ebtables --list时,我得到了这样的消息:

代码语言:javascript
复制
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?

EN

回答 2

Stack Overflow用户

发布于 2017-02-06 13:37:02

默认情况下,docker不支持此功能。但您可以在启动docker容器时传入以下参数,以支持Linux能力:

代码语言:javascript
复制
--cap-add       Add Linux capabilities
--cap-drop      Drop Linux capabilities  

对于网络功能,如iptables、ebtables等,您必须添加NET_ADMIN功能,如:

代码语言:javascript
复制
docker run -it --cap-add=NET_ADMIN ubuntu bash

如果未安装ebtables包,则使用以下命令在容器中安装ebtables包:

代码语言:javascript
复制
 sudo apt-get update
 sudo apt-get install ebtables

然后列出ebtables:

代码语言:javascript
复制
/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
票数 1
EN

Stack Overflow用户

发布于 2020-07-11 04:50:08

添加挂载对我有帮助

代码语言:javascript
复制
    cap_add:
        - 'ALL'
    volumes:
        - '/dev:/dev'
        - '/lib/modules:/lib/modules'

root@linuxbridge-agent:/# ls /lib/modules 5.4.0-26-generic 5.4.0-37-generic 5.4.0-39-generic 5.4.0-40-generic

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42060254

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档