히비스서커스의 블로그

[Docker] unable to configure the Docker daemon with file /etc/docker/daemon.json: invalid character '"' after object key:value pair , default-address_pools 본문

Programming/Docker

[Docker] unable to configure the Docker daemon with file /etc/docker/daemon.json: invalid character '"' after object key:value pair , default-address_pools

HibisCircus 2021. 10. 15. 10:45
728x90

출처 : (https://subicura.com/2017/01/19/docker-guide-for-beginners-1.html) 

도커 명령어를 간단한 입력하였는데 다음과 같은 에러가 나왔다. 

 

실행한 명령어

$ docker images

마주친 에러

Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

 

 

 

이를 해결하기 위해 docker 서비스 실행 명렁어를 입력하자 에러가 발생하였다.

 

실행한 명령어

$ systemctl start docker

마주친 에러

Job for docker.service failed because the control process exited with error code. See "systemctl status docker.service" and "journalctl -xe" for details.

 

 

 

자세한 상황을 파악하기 위해 디버그해보았다.

 

실행한 명령어

$ dockerd --debug

마주친 첫번째 에러

unable to configure the Docker daemon with file /etc/docker/daemon.json: invalid character '"' after object key:value pair

 

 

 

찾아보니 /etc/docker/daemon.json에 딕셔너리 부분에서 ,가 빠져있는 것을 확인하였다.

 

실행한 명령어

$ vi /etc/docker/daemon.json

수정 전 내용

...
"bip": "172.17.0.0/18"                                          
"default-address_pools":{"base":"172.17.0.0/18","size":24}] 
...

수정 후 내용

...
"bip": "172.17.0.0/18",                                        
"default-address_pools":{"base":"172.17.0.0/18","size":24}] 
...

 

 

 

다시 디버그 해보니 새로운 에러가 발생하였다.

 

실행한 명령어

$ dockerd --debug

마주친 두번째 에러

unable to configure the Docker daemon with file /etc/docker/daemon.json: default-address_pools 

 

 

 

이번 에러는 구글링해도 잘 나오지 않았는데 눈썰미를 가지고 잘 째려다보니 무언가 이상한 점을 발견..! 다른 글들에는 default-address-pools로 되어 있는데 내 파일에서는 default-address_pools로 되어 있었다. 변경 후 실행하였다.

 

실행한 명령어

$ vi /etc/docker/daemon.json

수정 전 내용

...
"bip": "172.17.0.0/18"                                          
"default-address_pools":{"base":"172.17.0.0/18","size":24}] 
...

수정 후 내용

...
"bip": "172.17.0.0/18",
"default-address-pools":{"base":"172.17.0.0/18","size":24}] 
...

 

 

 

아주 잘 돌아간다. 이후 다시 원점으로 돌아와 서비스 실행 명렁어를 입력 

 

실행한 명령어

$ systemctl start docker
$ systemctl enable docker

 

 

 

에러 없이 잘 돌아가는 것을 확인 다시 최초의 명령어 입력

 

실행한 명령어

$ docker images

 

아주 잘 확인이 된다. 

 

 

 

-히비스서커스-

728x90