Chapter 02

M1 Mac の基礎知識

ほげさん
ほげさん
2021.12.05に更新

以前公開した Book から抜粋して、超簡単に M1 Mac について整理します

https://zenn.dev/suzuki_hoge/books/2021-07-m1-mac-4ede8ceb81e13aef10cf

必要に応じてご覧ください

1. アーキテクチャってのが違う

超シンプルにするために、ARM と Intel の 2 つを対比する概念として使います

Mac CPU のアーキテクチャ 大まかに分類したときに仲間になるもの
M1 Mac ARM arm, arm64, aarch64 など
従来の Mac Intel x86, x86_64, amd, amd64 など

この Book では従来の Mac を Intel Mac、M1 Mac を ARM Mac と表記します

🤔 armamd という単語をよく見ることになります、超大事なのでよく見ましょう

2. uname で CPU のアーキテクチャがわかる

超重要コマンドです

Intel Mac
$ uname -m
x86_64          # → Intel
ARM Mac
$ uname -m
arm64           # → ARM
ARM Mac
$ docker run -it centos:latest bash

# uname -m
aarch64         # → ARM

Mac でも Linux コンテナでも使えます

🤔 とりあえずコンテナ内で叩いてどっちかなのか把握しておきましょう

3. Docker Desktop はばっちり動く

今はちゃんと ARM Mac 用の Docker Desktop アプリがあります

image

これにより Docker という仕組みはちゃんと動きます

4. コンテナがちゃんと動くかはコンテナによる

実はイメージには Intel イメージとか ARM イメージとかがあります[1]

Docker Hub とかから取ってくるときは Mac に合わせて自動で選ばれています

image

しかし、ARM イメージが用意されていないことが結構あります

🤔 自分が使おうとしたイメージと実際に使うことになったイメージが何か、把握しましょう

脚注
  1. 本当は画像の通り linux/amd64 イメージや linux/arm64/v8 イメージと言う方が厳密ですが、この Book ではシンプル化して Intel / ARM と表記します ↩︎