【Mac M1】Dockerのインストール方法
○はじめに
平素より大変お世話になっております。
今回はDockerの導入方法について記述します。
執筆時点ではM1対応をしているので、インストールで特に困ることは起きないかなぁって思っていたのですが、思いのほかスムーズにインストールできなかったので、正常にインストールするための方法を記載します。
また、本資料はMac M1向けとなります。
Intel製のMacを使用している場合、本資料を参考にすると不具合が発生する可能性がありますので、ご注意ください。
自身のPCが何製か調べる方法はこちらからどうぞ!
○使用機器
- 型式:Mac Book Pro(2021)
- CPU:10コア
- GPU:16コア,16コアNeural Engine
- RAM:16GB
1.導入方法
(1)Homebrewの導入
- 下記コマンドを「Terminal」上にペースト、実行します。
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
公式サイトはこちら↓
※「Terminal」は「Launchpad」の検索で出てきます。
- インストール完了後、「Terminal」上で下記コマンドを入力し、アンサーが表示されていればインストール完了です。
brew -v
Homebrew 3.4.6 //OK!
(2)Dockerの導入
- 下記コマンドを「Terminal」上にペースト、実行します。
brew install docker --cask
- インストール完了後、「Launchpad」上にDockerがあれば導入完了です。
- ちなみに方法でインストールすると、自動的にDocker Desktopがインストールされます。
(3)Dockerの設定
- DockerをTerminal上で使用する場合、起動する度にDockerのアプリケーションを起動する必要があるっぽいです。
(試すと分かるのですが、下記コマンドが表示されてDockerが動作しません。)
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
- これはDocker deamonが起動していないため起こるエラーのため、PC起動時にDockerが自動的に立ち上がるように設定します。
- 「Launchpad」より「Docker」を起動します。
- 起動後、下図の歯車マークから設定画面を開きます。
Docker Desktop:起動画面
- その後、「General」→「Start Docker Desktop when you log in」にチェックを入れます。
Docker Desktop:設定画面
- 以上で自動的にDocker deamonがログイン時に起動するため、Terminalで好きなタイミングで実行できます。
2.注意事項
1-(2)を実行前に、
brew install docker
上記コマンドで実行すると、下記エラーが発生しdockerが動作しませんでした。
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
また、これを残した状態で 1-(2)を実行すると、下記エラーが発生しインストールを行えません。
brew install docker --cask
Mac Homebrew It seems there is already a Binary //Answer
そのため、下記コマンドでdockerを削除した後、1-(2)を実行してください。
brew remove docker
3.まとめ
簡単にインストールできるかなぁって思ってたのですが、ちょっとハマりました(笑)
特に「--cask」については自動的に補完されるとの記載を見かけていたので、なぜ省略してインストールできなかったのかが分かりません。。。
(ご存じの方がいればご教授頂ければ嬉しいです!!)
現時点では上記方法でインストールができたので、参考になれば幸いです!
4.参考文献
Author And Source
この問題について(【Mac M1】Dockerのインストール方法), 我々は、より多くの情報をここで見つけました https://zenn.dev/imasaka0909/articles/e984e9e69c43cf著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Collection and Share based on the CC protocol