Docker build 的時候,遇到一直 DNS 查詢錯誤的問題,錯誤訊息如下:
Err:1 http://ftp.tw.debian.org/debian stretch InRelease Temporary failure resolving 'ftp.tw.debian.org' Reading package lists... W: Failed to fetch http://ftp.tw.debian.org/debian/dists/stretch/InRelease Temporary failure resolving 'ftp.tw.debian.org' W: Some index files failed to download. They have been ignored, or old ones used instead.
要怎麼解決呢?
Docker build 遇到 Temporary failure resolving DNS 解析問題
使用各種方法,tee 將 8.8.8.8 之類的寫入 /etc/resolv.conf,都沒有效。
於是乾脆把所有拔光光,先 build 起來後,進入 docker 裡面試試看,發現原來連網路都不通... (但是線上還有其它 docker 正在正常執行)
於是找到解法,雖然解法很蠢... XD
解法
- docker ps # 先看看目前線上執行的有哪些,是否可以中斷,若都確認可以中斷,再進行下一步
- sudo service docker restart # 重開治百病
注意
線上還在跑的 Docker 會被 stop 掉,所以下述步驟參考看看:
- docker ps -a # 若有找到其他的
- docker start xxx # restart 完需要手動啟動