

Mac M1用のDockerプレビュー版でエラー(トラブル)が起きた時の解決策

Apple M1チップ対応のMacでDockerを使うには、2021年2月時点では専用のDockerアプリ(Docker Preview版)のインストールが必要です。
(インストール方法は割愛します)
今回は、M1用のDockerアプリ(以下、Docker)で環境構築する際に起きたトラブルの解決策をまとめました。
おそらく、Docker Preview版ではない通常版でも起きる可能性もありますが、Docker初心者の方の役に立てばと思い記事を書きました。
dockerコマンドが実行できない
タイトルの通り、dockerコマンドが実行できい事象に陥りました。
バージョンを確認するdocker --versionは実行できたのですが、他のコマンドがダメでした。
このような事象が起きた場合、次の項目を確認してください。
Docker for Macにログインする
Dockerを起動したら、ステータスバーにDockerにアイコンが表示されます。
アイコンをクリックして、「Dashborard」を選択します。
Dockerのダッシュボードが表示されるので、右上からログインしましょう。
もし、アカウントが無い場合は作成してログインしましょう。
TravelshootからClean / Purge dataを実行する
ダッシュボードの右上のアカウントアイコンの左にあるてんとう虫?のアイコン(Travelshootを開くボタン)をクリックします。
「Clean / Purge data」という項目があるので、それを実行します。
その後、Dockerを再起動します。
私自身、「Clean / Purge data」を実行してDockerを再起動したら解決しました。
docker-compose buildやdocker-pullでエラーになる
docker-compose buildを実行したらこのようなエラーが表示されました。
調べてみると、こちらの記事が参考になりそうでした。
https://us-blog.com/docker-pull-http-408-response/
こちらの記事によると、どうやらネットワーク(Wi-Fi)の問題とのことです。
試しに、ネットワークのMTU値を変更してみたのですがダメでした。
なので、自宅のWi-Fiは一旦切断して、iPhoneのデザリングに切り替えて、再度docker-compose buildを実行してみました。
すると無事完了しました!
ネットワークを切り替えればいいので、iPhoneのデザリングではなく、違う場所(会社やFree Wi-Fiなど)で試してみるのもいいと思います。
まとめ
普段使わないツールで躓くのはかなりしんどいですよね。
とりあえずエラー文でググってみましょう。