Docker Desktop for Windowsでコンテナ起動時に「driver failed programming external connectivity」や「input/output error」が発生する場合の解決方法

環境

  • Windows 10
  • Docker Desktop for Windows 2.0.0.3

現象

昨日まで動いていたのに、朝起きたらコンテナ起動ができなくなりました。あると思います。

エラーはこちら。

C:\docker>docker-compose up -d
Creating network "sf2_default" with the default driver
Creating sf2_php_1 ...
Creating mysql57   ... error

ERROR: for mysql57  Cannot start service mysql: driver failed programming external connectivity on endpoint mysql57 (7b8Creating sf2_php_1 ... error
306:tcp:172.18.0.2:3306: input/output error

ERROR: for sf2_php_1  Cannot start service php: driver failed programming external connectivity on endpoint sf2_php_1 (60f6d4edbbb4caa90a255ffe15fa841a078bdd4791d79c84661e935c80ee49df): Error starting userland proxy: mkdir /port/tcp:0.0.0.0:8080:tcp:172.18.0.3:80: input/output error

ERROR: for mysql  Cannot start service mysql: driver failed programming external connectivity on endpoint mysql57 (7b878ad3cb248bcbde9687360181d3a6fdf5416ccfb5797732f53dca8ed59bb6): Error starting userland proxy: mkdir /port/tcp:0.0.0.0:3306:tcp:172.18.0.2:3306: input/output error

ERROR: for php  Cannot start service php: driver failed programming external connectivity on endpoint sf2_php_1 (60f6d4edbbb4caa90a255ffe15fa841a078bdd4791d79c84661e935c80ee49df): Error starting userland proxy: mkdir /port/tcp:0.0.0.0:8080:tcp:172.18.0.3:80: input/output error
ERROR: Encountered errors while bringing up the project.

コンテナが3つありますが、すべて同じエラーで失敗してます。
ドライバが原因でコンテナに接続できなかった?

driver failed programming external connectivity on endpoint mysql57

ポート変換設定に失敗した?

Error starting userland proxy: mkdir /port/tcp:0.0.0.0:3306:tcp:172.18.0.2:3306: input/output error

解決方法

Dokcer Desktopを再起動するのみ!

  1. Docker Desktopのsettingsから管理画面開き

docker-restart

  1. Resetメニューから再起動

docker-restart

再度コンテナ起動したら無事に動きました。

C:\docker>docker-compose up -d
Creating network "sf2_default" with the default driver
Creating sf2_php_1        ... done
Creating mysql57   ... done
Creating sf2_phpmyadmin_1 ... done