在 stackoverflow 和其他一些博客中看到几篇帖子后,我仍然无法摆脱一些
iptables
问题。
我使用以下配方创建了一个
Yocto
图像(x86):
require recipes-core/images/core-image-minimal.bb
DESCRIPTION = "My Linux Image."
IMAGE_INSTALL += "\
docker-ce \
python3-docker-compose \
python3 \
"
我的环境是
Windows 10
和 WSL2
,其中 Ubuntu 22.04
与 QEMU
模拟器一起运行。
我只想使用
docker compose
创建一个简单的 Linux 映像,这样我就可以从 hello-world
运行 docker compose
:
https://docs.docker.com/compose/gettingstarted/
我被阻止了:
Error response from daemon: driver failed programming external connectivity on endpoint docker-compose-hello-world-web-1 (149593c5ce28171b7a379f9a5b896e3a541c6ab89fda6):
(iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 9999 -j DNAT --to-destination 172.18.0.3:5000 ! -i br-fc6bc88aac23:
Warning: Extension DNAT revision 0 not supported, missing kernel module?
我正在从我的
9999
公开端口 docker-compose.yml
。
我的内核缺少什么模块? 我已经尝试过重新启动 docker 服务、重新启动等,只要你能想到的。 我也尝试添加这些环境变量:
export DOCKER_BUILDKIT=0
export COMPOSE_DOCKER_CLI_BUILD=0
我的docker网络是这样的:
root@qemux86-64:~/docker-compose-hello-world# docker network ls
NETWORK ID NAME DRIVER SCOPE
e0109904a4f1 bridge bridge local
ee1bf049614b docker-compose-hello-world_default bridge local
1c399dc89e34 host host local
a3994241998d none null local
root@qemux86-64:~/docker-compose-hello-world#
这里可能缺少什么内核模块?
我正在使用 yocto 图像并遇到相同的错误...