도커 windows container 를 사용 할때에 host dns 연결이 안되는 문제가 필히 발생된다.

{
"bridge": "Internet",
"debug": false,
"dns": [
"1.1.1.1",
"8.8.8.8"
],
"builder": {
"gc": {
"defaultKeepStorage": "20GB",
"enabled": true
}
},
"experimental": false,
"features": {
"buildkit": true
},
"insecure-registries": [],
"registry-mirrors": []
}
이때는 Docker Engine 에서 해당 값으로 수정해주고, docker build image 하게되면 문제 없이 잘 빌드 될 것이다.
만약에 여기서 2375 port 를 Expose daemon on tcp 를 열어주려면 아래와 같이 설정
{
"bridge": "Internet",
"builder": {
"gc": {
"defaultKeepStorage": "20GB",
"enabled": true
}
},
"debug": false,
"dns": [
"1.1.1.1",
"8.8.8.8"
],
"experimental": false,
"features": {
"buildkit": true
},
"hosts": [
"tcp://0.0.0.0:2375"
],
"insecure-registries": [],
"registry-mirrors": []
}
외부에서 2375 포트를 열어주려면 netsh로 방화벽을 열어줘야한다. 그런데, 일반적으로 그냥 열어주면 보안에 취약해지므로, 특정 아이피만 오픈하게 설정한다.
netsh advfirewall firewall add rule name="Docker Engine" dir=in action=allow protocol=TCP localport=2375 remoteip=AAA.AAA.AAA.AAA BBB.BBB.BBB.BBB
netsh advfirewall firewall delete rule name="Docker Engine"