我正在關注的docker tutorial和我的一部分,我必須使用構建應用程序:名稱解析暫時性故障[錯誤-3]與碼頭工人
docker build -t friendlyhello .
它達到了第4步,在那裏暫停後,我得到這個錯誤:
Step 4/7 : RUN pip install -r requirements.txt
---> Running in 7f4635a7510a
Collecting Flask (from -r requirements.txt (line 1))
Retrying (Retry(total=4, connect=None, read=None, redirect=None)) after
connection broken by
'NewConnectionError('<pip._vendor.requests.packages.urllib3.connection.VerifiedHTTPSConnection
object at 0x7fe3984d9b10>: Failed to establish a new connection:
[Errno -3] Temporary failure in name resolution',)': /simple/flask/
我不太清楚這是什麼錯誤意味着,我該如何去解決它。
感謝您的幫助!
該錯誤意味着pip無法解析DNS名稱。首先,檢查Docker中的網絡是否可用。運行'docker -it -rm python:2.7-slim/bin/bash',然後嘗試運行'ping pypi.python.org'和'ping -n 8.8.8.8'。用ctrl-D或exit退出。如果ping失敗(發佈結果),那麼您的網絡或DNS有問題(使用操作系統詳細信息和Docker版本更新您的問題)。如果它有效,那麼,我想,你已經遇到了Docker或pip的一些bug - 嘗試添加'--verbose',這樣命令將會是'RUN pip install --verbose -r requirements.txt',也許它會提供一些有用的東西。 – drdaeman
感謝您的回覆。 ping確實工作正常,但是你提到的第一個命令,只是給了我錯誤:我在'-it'中不知名的簡寫。 當使用'--verbose'運行時,我得到以下內容: '獲取頁面https://pypi.python.org/simple/flask/ 查找「https://pypi.python.org/simple/flask /「在緩存中 沒有可用的緩存條目 – monadoboi