見出し画像

[Docker] i/o timeoutのエラー対応

初めまして。株式会社tolvの宍戸陽介です。
夫婦二人で福岡でシステム会社をしています。私たちの紹介は改めて別の記事でお話しできればと思います。

今回はLaravelの環境構築の際にDockerでエラーが発生したので、対処方法について記載します。

laradockでdocker-compose build時のエラー

laravelの開発環境をlaradockで構築する際に、下記エラーが発生しました。

failed to solve with frontend dockerfile.v0: failed to create LLB definition: failed to do request: Head https://registry-1.docker.io/v2/laradock/php-fpm/manifests/latest-8.0: proxyconnect tcp: dial tcp 192.168.65.1:3128: i/o timeout
ERROR: Service 'php-fpm' failed to build : Build failed

PCの環境がM1のmacのため、その辺りの問題かと思っていたのですが、動いていた他の開発環境も同様のエラーで動きませんでした。
色々なサイトを調べたのですが、対象方法でDNSの変更などがありましたがどれも解決せずでした。

virtualization frameworkの無効化

解決方法ですが、Docker Desktopの [Preferences] - [Experimental Features] にある[Use new virtualization framework] のチェックを外すことで解決しました。

スクリーンショット 2021-06-03 0.33.04

virtualization frameworkはAppleがBig Surで提供している仮想化のフレームワークの様です。おそらく、まだ安定していないのかもしれませんね。

おまけ

M1対応のdockerのmysqlは対応されていないようなので、もしmysqlを利用する場合は、docker-compose.ymlのmysqlに下記を追加することで対応できます。

platform: "linux/x86_64"


Author : Yosuke Shishido

この記事が気に入ったらサポートをしてみませんか?