2020년 3월 20일 금요일

docker-compose error (Unable to enable NAT rule)

$ docker-compose up -d
Creating network "chapter04_default" with the default driver
ERROR: Failed to Setup IP tables: Unable to enable NAT rule:  (iptables failed: iptables --wait -t nat -I POSTROUTING -s 172.21.0.0/16 ! -o br-8cbf06e4b2c9 -j MASQUERADE: iptables: No chain/target/match by that name.
 (exit status 1))

[Fix]
$ sudo vi /etc/docker/daemon.json
{
    "iptables":false
}

and then..

restart dockerd


[업데이트 2026-10]

  • "iptables": false는 도커가 iptables 규칙(NAT, 포트 공개)을 자동으로 만들지 않게 하는 임시 우회 방법이다. 이 상태에서는 컨테이너의 외부 통신이나 -p 포트 공개가 안 될 수 있다.
  • 이 오류는 WSL1처럼 iptables 관련 커널 모듈이 없는 환경에서 날 수 있다. 가능하면 WSL2를 쓰는 편이 낫고, 우회가 필요 없어졌다면 daemon.json 설정은 되돌려 둔다.

댓글 없음:

댓글 쓰기