728x90
도커 컨테이너 IP 테이블 설정 실패
오류: IP 테이블 설정 실패: SKIP DNAT 규칙을 활성화할 수 없습니다.
그 이유는 방화벽(systemctl stop firewalld)이 꺼진 후 도커를 다시 시작해야 하기 때문입니다.
(docker 데몬 운영 중에 firewalld 데몬을 내려서 발생한 에러입니다.)
도커 서비스 재시작
systemctl restart docker.service
[오류 현상]
docker run -it --rm centos:7 /bin/bash 도커 컨테이너 실행 후 구글 DNS로 ping 체크가 안 되고 있음
docker run -it --rm centos:7 /bin/bash
ping 8.8.8.8
$ docker run -it --rm centos:7 /bin/bash
Unable to find image 'centos:7' locally
7: Pulling from library/centos
2d473b07cdd5: Pull complete
Digest: sha256:9d4bcbbb213dfd745b58be38b13b996ebb5ac315fe75711bd618426a630e0987
Status: Downloaded newer image for centos:7
[root@7fd41bb55b36 /]# ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
^C
--- 8.8.8.8 ping statistics ---
202 packets transmitted, 0 received, 100% packet loss, time 201124ms
[root@7fd41bb55b36 /]# exit
exit
docker 에러는 어디에서 볼 수 있을까요?
docker-compose로 컨테이너 기동하여 테스트 진행하려고 함.
- stdin_open: true => docker run -i
- tty: true => docker run -t
vim docker-compose.yml
version: '3'
services:
centos7:
container_name: centos7
hostname: centos7
image: centos:7
restart: always
stdin_open: true
tty: true
docker-compose 기동
$ docker-compose up -d
Creating network "centos_default" with the default driver
ERROR: Failed to Setup IP tables: Unable to enable SKIP DNAT rule: (iptables failed: iptables --wait -t nat -I DOCKER -i br-fcf08496729a -j RETURN: iptables: No chain/target/match by that name.
(exit status 1))
docker-compose 기동하니 아래와 같은 오류가 발생하였습니다.
ERROR: Failed to Setup IP tables: Unable to enable SKIP DNAT rule: (iptables failed: iptables --wait -t nat -I DOCKER -i br-fcf08496729a -j RETURN: iptables: No chain/target/match by that name.
(exit status 1))
728x90
[오류 현상 해결]
해당 오류를 해결하기 위해 docker.socket 데몬(서비스) 재기동하였습니다.
systemctl restart docker.service
systemctl restart docker.socket
systemctl status docker.socket
$ systemctl status docker.socket
● docker.socket - Docker Socket for the API
Loaded: loaded (/usr/lib/systemd/system/docker.socket; disabled; vendor preset: disabled)
Active: active (running) since Thu 2021-11-25 09:36:11 KST; 1s ago
Listen: /var/run/docker.sock (Stream)
Nov 25 09:36:11 datanode03 systemd[1]: Closed Docker Socket for the API.
Nov 25 09:36:11 datanode03 systemd[1]: Stopping Docker Socket for the API.
Nov 25 09:36:11 datanode03 systemd[1]: Starting Docker Socket for the API.
Nov 25 09:36:11 datanode03 systemd[1]: Listening on Docker Socket for the API.
다시 컨테이너 기동하여 8.8.8.8로 ping 테스트 진행하였습니다.
- 정상
docker run -it --rm centos:7 /bin/bash
$ docker run -it --rm centos:7 /bin/bash
[root@b227e7011993 /]# ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=112 time=56.2 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=112 time=56.0 ms
^C
--- 8.8.8.8 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1001ms
rtt min/avg/max/mdev = 56.028/56.162/56.297/0.272 ms
[root@b227e7011993 /]#
728x90
'리눅스' 카테고리의 다른 글
도커 컨테이너 터미널 프롬프트(PS1) 색상 변경 (0) | 2021.11.25 |
---|---|
[draft] docker rmi 명령어 (0) | 2021.11.25 |
HAProxy 로깅(haproxy logging) 설정하는 방법 (0) | 2021.11.24 |
CentOS 7에서 HAProxy를 설치하고 구성하는 방법 (0) | 2021.11.24 |
[draft] 우분투에서 Docker 데몬의 로그를 관리하는 방법 (0) | 2021.11.23 |