M1 MacにDocker Desktop環境を構築する

photo of person typing on computer keyboard

M1 MacにDocker Desktop環境を構築するための手順を紹介します.

目次

Dockerをインストールします

brewでDocerをインストールする。

brew install docker

Docker Desktopのインストール

docker-toolはM1 Mac (arm64)サポート外

docker-toolのインストールを試みる。

brew install --cask docker-toolbox

すると以下のエラーが出る。

######################################################################## 100.0%
==> Installing dependencies: virtualbox
==> Downloading https://download.virtualbox.org/virtualbox/7.0.4/VirtualBox-7.0.
######################################################################## 100.0%
Error: Cask virtualbox depends on hardware architecture being one of [{:type=>:intel, :bits=>64}], but you are running {:type=>:arm, :bits=>64}.

Docker-toolboxには、Virtualboxのインストールが必要だが、Virtualboxはarm64をサポートしていないとのこと。

Docker desktop for Macのインストール

現在はDocker-toolboxよりもDocker desktop for Macが主流のようである。Dockerのページからインストーラをダウンロードしてインストール。

参考までに以下は公式ページに記載されている、Docker Desktop on Mac を使い始める前に知っておく重要なポイント。

  • Docker Desktop は VirtualBox の代わりに HyperKit を使います。Hyperkit は軽量な macOS 仮想化ソリューションであり、 macOS 10.10 Yosemite 以降の Hypervisor.framework 上で構築されています。
  • Docker Desktop on Mac をインストールしても、Docker Machine で作成したマシンは影響を受けません。
  • Docker Desktop は仮想マシンのプロビジョンに docker-machine を使いません。Docker Engine API は Mac ホスト上の /var/run/docker.sock に露出しているソケットで利用できます。これは Docker と Docker Compose クライアントが Docker デーモンと通信するためのデフォルトの場所です。つまり、 docker と docker-compose CLI コマンドが Mac 上で使えます。

翻訳すると、「Mac Apple Sericon用のDocker DesktopではRosetta2が必須要件から外されたが、一部のコマンドラインツールはRosetta 2を必要とするため、Rosetta 2をインストールすることを推奨する。」とのことなので、Rosetta 2もインストールする。

Beginning with Docker Desktop 4.3.0, we have removed the hard requirement to install Rosetta 2. There are a few optional command line tools that still require Rosetta 2 when using Darwin/AMD64. See the Known issues section. However, to get the best experience, we recommend that you install Rosetta 2. To install Rosetta 2 manually from the command line, run the following command:

https://docs.docker.com/desktop/install/mac-install/
$ softwareupdate --install-rosetta

公式ページからダウンロードしたDocker.dmgをダブルクリックしてインストール完了。その後表示されるチュートリアルを実行して完了。

よかったらシェアしてね!
目次