Docker Desktop for Macをインストールする。意外とインストールは簡単なので、動作確認まで記載する。
環境
macOS Big Sur 11.6 (Chip: Apple M1)

インストール方法
ダウンロード
以下のサイトからダウンロードする。
Intel chipとApple chipで異なるので、PCにあったものをクリックする。

Chipがどちらか分からない場合は、Mac左上のアップルマークから「About This Mac(このMacについて)」をクリックするとChipの情報が確認できる。

以下の場合は、ChipがAppleであることがわかる。

インストール
ダウンロードしたdmgをファイルをダブルクリックして実行すると、以下のような画面がファインダー上に現れるので、Applicationsフォルダへドラッグ&ドロップする。

上記の作業でインストールが開始されるので、終わるまで待つ。



起動
インストールが完了したら、ApplicationsフォルダにあるDockerをダブルクリックして起動する。
※以下のポップアップが出た場合、「開く」をクリックする。

※以下のポップアップが出た場合、「OK」をクリックする。

※以下が出た場合、Macのアカウントパスワードを入力して「ヘルパーをインストール」をクリックする。

数十秒待つとちょっぴり可愛いイラストの「サービス契約が変更されてまっせ」画面が出てくることがあるので、こちらも目を通りして、「Accept」をクリックする。

以下のような画面が出れば、dockerは起動されている状態である。
※「Docker Engine starting…」と表示される場合は、まだ起動中。


動作確認
上記の画面にあるdockerコマンドをTerminalで打ってみる。
docker run -d -p 80:80 docker/getting-started
以下のような出力となる。
Unable to find image 'docker/getting-started:latest' locally
latest: Pulling from docker/getting-started
be307f383ecc: Pull complete
bcbca5debd8f: Pull complete
b01ce6b852e5: Pull complete
82b5e1c8a205: Pull complete
a03caadc034c: Pull complete
32ccf701d239: Pull complete
ad05f374a3d4: Pull complete
377fcc7dfb96: Pull complete
Digest: sha256:XXXXXXXXXXXXXXXXXXXX25edb77689c8eecf8ed0cb3946573a24a6f71e88cf80
Status: Downloaded newer image for docker/getting-started:latest
a18b04aadc33XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
以下のコマンドでイメージが存在しているかどうか確認。
docker images
以下のコマンドでコンテナが起動しているか確認
docker ps
確認結果例は以下のようになる。
% docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
docker/getting-started latest 720f449e5af2 5 weeks ago 27.2MB
% docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
a18b04aadc33 docker/getting-started "/docker-entrypoint.…" 4 minutes ago Up 4 minutes 0.0.0.0:80->80/tcp angry_ardinghelli
イメージはdocker runコマンドで指定したdocker/getting-startedが存在していることがわかる。またdocker psコマンドでは、docker runコマンドの出力の最後にある「a18b04aadc33…」とCONTAINER IDが一致しているので同じものであることがわかる。そのSTATUSがUpになっているため、コンテナは正常に起動している。
以下のコマンドでコンテナをストップする。
docker stop <CONTAINER ID or NAMES>
以下のように停止する。
% docker stop a18b04aadc33
a18b04aadc33
コンテナを停止すると、docker psコマンドには現れなくなるが、停止されただけで削除はされていない。この場合、-aオプションで確認することができる。
docker ps -a
以下のように出力され、StatusがExitとなっているため、停止されているコンテナと判断できる。
% docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
a18b04aadc33 docker/getting-started "/docker-entrypoint.…" 8 minutes ago Exited (0) 42 seconds ago angry_ardinghelli
以下のコマンドでコンテナを削除する。
docker rm <CONTAINER ID or NAMES>
以下のコマンドでイメージを削除する。TAGがlatestの場合は省略可能。
docker rmi <REPOSITORY>:<TAG>
以下のように実行する。
% docker rm a18b04aadc33
a18b04aadc33
% docker rmi docker/getting-started:latest
Untagged: docker/getting-started:latest
Untagged: docker/getting-started@sha256:86093b75a06bf74e3d2125edb77689c8eecf8ed0cb3946573a24a6f71e88cf80
Deleted: ...
...
docker imagesとdocker ps -aコマンドを再度実行すると、上記のイメージとコンテナは削除されているため表示されないことがわかる。
以上で動作確認は個人的には完了。