相关文章推荐
淡定的冰淇淋  ·  Linux ...·  1 月前    · 
叛逆的充电器  ·  开始将 VS Code 与 WSL ...·  1 月前    · 
成熟的火柴  ·  標準 | Oracle 台灣·  昨天    · 
爽快的可乐  ·  Kaggle LLM ...·  1 年前    · 
想表白的水煮鱼  ·  Django vs ...·  2 年前    · 
空虚的生姜  ·  EnumerableRowCollectio ...·  2 年前    · 
Collectives™ on Stack Overflow

Find centralized, trusted content and collaborate around the technologies you use most.

Learn more about Collectives

Teams

Q&A for work

Connect and share knowledge within a single location that is structured and easy to search.

Learn more about Teams

After seeing several posts in stackoverflow and some other blogs, I still couldn't get rid of some iptables issue.

I created a Yocto image (x86) with the following recipe:

require recipes-core/images/core-image-minimal.bb
DESCRIPTION = "My Linux Image."
IMAGE_INSTALL += "\
    docker-ce  \
    python3-docker-compose \
    python3 \

My environment is Windows 10 with WSL2 where I have Ubuntu 22.04 running with QEMU emulator.

I just want to create a simple Linux image with docker compose where I could be able to run the hello-world from docker compose:

https://docs.docker.com/compose/gettingstarted/

I am blocked on this:

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?

I am exposing the port 9999 from my docker-compose.yml.

What module my kernel is missing? I've already tried to restart the docker service, reboot, etc, you name it. I've tried to add these env variables as well:

export DOCKER_BUILDKIT=0
export COMPOSE_DOCKER_CLI_BUILD=0

My docker network is this:

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#

What kernel module could be missing here?

Thanks for contributing an answer to Stack Overflow!

  • Please be sure to answer the question. Provide details and share your research!

But avoid

  • Asking for help, clarification, or responding to other answers.
  • Making statements based on opinion; back them up with references or personal experience.

To learn more, see our tips on writing great answers.