2016-11-18 57 views
7

我知道有很多關於在Windows上運行Docker的問題,但是這個問題是關於在Windows上運行全新的Docker for Windows。
在我的情況下,我正在使用Windows 10 Pro 64位。根據網站這個版本應該被支持。
我一直在下面的教程,我發現在這裏: https://prakhar.me/docker-curriculum/
我也試過以下課程的官方指南:使用兩種https://docs.docker.com/docker-for-windows/運行Docker for Windows,暴露端口時出錯

在這兩個教程試圖分配一個端口時,我得到同樣的錯誤消息-P參數或者試圖指定端口-p 8080:5000時:

在官方指導我跑docker run -d -p 80:80 --name webserver nginx並獲得:

C:\Program Files\Docker\Docker\Resources\bin\docker.exe: Error response from daemon: driver failed programming external connectivity on endpoint webserver (f9946544e4c6ad2dd9cb8cbccd251e4d48254e86562bd8e6da75c3bd42c7e45a): Error starting userland proxy: mkdir /port/tcp:0.0.0.0:80:tcp:172.17.0.2:80: input/output error.

繼非官方的指導我運行docker run -p 8888:5000 prakhar1989/catnip並獲得基本相同的錯誤:

C:\Program Files\Docker\Docker\Resources\bin\docker.exe: Error response from daemon: driver failed programming external connectivity on endpoint focused_swartz (48a0c005779c6e89bf525ead2ecff44a7f092495cd22ef7d19973002963cb232): Error starting userland proxy: mkdir /port/tcp:0.0.0.0:8888:tcp:172.17.0.2:5000: input/output error.

如果我不嘗試分配一個端口容器運行,但我不知道如何訪問它。

泊塢窗版本我運行:

  • 泊塢版本1.12.3,構建6b644ec`
  • 泊塢窗,撰寫版本1.8.1,建立004ddae`
  • 泊塢窗,machine.exe 0.8版.2,build e18a919`

任何幫助將不勝感激。謝謝。

+0

運行'docker ps'的結果是什麼? – R0MANARMY

+0

'docker ps'給了我一個空的列表,'docker ps -a'將顯示兩個嘗試啓動容器的嘗試。 –

+0

正常情況下,如果您已經在該端口上運行了某些內容,則會發生錯誤,但如果您使用'-P'嘗試了它,它應該選擇一個隨機的高端口並工作。 – R0MANARMY

回答

11

這是一個新的轉折點。

最新的Windows 10更新(Fall Creators Update,2017)有一個新的「功能」。它會自動啓動上次關機時正在運行的任何應用程序。

這重構了Docker for Windows狀態不佳。這使得這些端口似乎被其他東西所使用 - 這是它本身的幽靈。這解釋了爲什麼即使我停止/啓動我的容器,甚至重新啓動,這些端口仍然在使用中!

這種情況下的解決方案是簡單地重新啓動Docker守護進程。

爲防止在下次關機後出現此情況,請勿使用關機按鈕。請改爲輸入此代碼:

shutdown /s /t 0 

這會繞過新功能。

見傑森[MS]答案在這個線程:

https://answers.microsoft.com/en-us/insider/forum/insider_wintp-insider_perf-insiderplat_pc/programs-autostart-after-boot-in-windows-10-fall/09dd8d3e-7b36-45d1-9181-6587dd5d53ab

這裏有一個傢伙的解決方法(從這個線程結束 - 還沒有嘗試過我自己):

http://www.icttoolbox.nl/info/stop-windows-10-creator-fall-reopening-programs-reboot/

+1

重啓docker daemon幫助。謝謝@ biscuit314 – neaGaze

相關問題