Windows10 または Windows11 で Rancher Desktop を使って Docker を動かす方法。

前回は Docker Desktop を使わずに Windows で Docker 環境を構築する方法を紹介しました。
今回は、Windows10 または Windows11 で RancherDesktop をインストールして Docker コンテナを動かす方法を解説します。
前回同様にどちらの OS も同じ手順でできます。

なお、前回の記事はこちらになります。

https://qiita.com/IoriGunji/items/15814a99c4114bcd04d8

:::note warn
掲載されている画面のイメージが、お使いの環境と異なる場合があります。
これは利用している OS やアプリケーションによって、デザインが異なるためです。
表示されている内容や入力する内容は、あまり変わりませんので、気にせずにご覧ください。
:::




# Rancher Desktop のインストール
まずは Rancher Desktop をダウンロードして、インストールします。


## Rancher Desktop のダウンロード
下記の Rancher Desktop 公式サイトにアクセスします。

https://rancherdesktop.io/

`Download Windows` をクリックして、 `Rancher Desktop` ダウンロードします。
![RancherDesktop_20230220134706.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/212972/982c941a-cdf2-7d7b-a55e-9fdf6ef5fd11.png)


ダウンロードした `Rancher.Desktop.Setup.x.x.x.msi` を実行します。
![RancherDesktop_20230220162437.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/212972/953336e8-bcfa-13f4-b278-ff2cfd952e1e.png)

`I accept the terms in the License Agreement` にチェックを入れ `Next` をクリックします。
![RancherDesktop_20230220154101.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/212972/42b628c9-ee7e-315e-ddea-d14fb7844abe.png)

`Install` をクリックします。
![RancherDesktop_20230220154112.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/212972/bb46dc3e-40dd-7981-a9be-f3a417d5ddca.png)

インストールが完了するまで待ちます。
![RancherDesktop_20230220154122.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/212972/979bda95-60ac-fc6e-b4d9-2977631025f1.png)

UAC（User Account Control）が立ち上がるので、 `はい` をクリックします。
![RancherDesktop_20230220154128.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/212972/dad36503-820c-b25a-3a05-943cd3a2f53e.png)

インストールが完了したら、 `Finish` をクリックします。
![RancherDesktop_20230220154303.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/212972/11f4b056-4671-5552-562b-730f83999b8c.png)

再起動を促されるので、 `Yes` をクリックして再起動します。
![RancherDesktop_20230220154315.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/212972/3bfbf434-8493-adf2-ba2b-e0a06ddc39e2.png)

:::note warn
すぐに再起動されるため、作業中のデータなどがある場合は保存してから、Yesをクリックしてください。
なお、 WSL2 がインストール済みの場合など、再起動を促されない場合もあります。
:::

<br>

再起動が完了すると、改めて UAC がたちが上がるので、 `はい` をクリックします。
![RancherDesktop_20230220154617.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/212972/c2d47dd3-e6bb-b4ef-a16c-fea47a0c810e.png)

自動的に WSL2 のインストールが始まるので、終わるまで待ちます。
![RancherDesktop_20230220154641.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/212972/47908872-48ec-e9a3-347b-3f4c4696484c.png)





# RancherDesktop の起動
インストールが終わったら、Rancher Desktop を起動します。


## Rancher Desktop の初期設定
初回設定を行います。
Rancher Desktop で Kubernetes（K3s） が利用できます。
今回は Docker のみを利用するので、 `Enable Kubernetes` のチェックを外します。
利用するコンテナエンジンは Docker になるため、 `dockerd(moby)` を選択し、 `Accept` をクリックします。
![RancherDesktop_20230221144112.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/212972/80650a4e-ab26-d8df-9dd1-ccfecf3e1059.png)

:::note info
Kubernetes を利用しない場合は、 `Enable Kubernetes` のチェックを外したほうが、リソースの節約ができます。
この設定は後からでも変更できます。（変更方法は [こちら](#設定の変更)）
:::


## Docker イメージのダウンロード
Rancher Desktop が起動すると、下記の画面が表示されます。
左側の `Images` タブから Docker イメージの管理ができます。
![RancherDesktop_20230221145843.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/212972/59220994-fd3b-ba9e-e433-0d6837267479.png)

:::note info
`docker run` コマンドで Pull されたイメージも下記で説明する画面で管理することができます。
そのため、この手順で Docker イメージを Pull しなくても構いません。
:::

<br>

Docker イメージのダウンロード（以下：Pullと称する）をするには、右上の `＋マーク` をクリックします。 
![RancherDesktop_20230221152025.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/212972/dba0a4b9-16fc-ea90-ed97-6211c1714543.png)

Pull したいイメージ名を入力し、 `Pull` をクリックします。
![RancherDesktop_20230221152703.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/212972/f21c4197-d34b-a7e4-b066-09799b42a8f7.png)

:::note info
Docker イメージを取得するデフォルトの `Docker レジストリ` は、 [Docker Hub](https://hub.docker.com/) になります。
その他のレジストリを利用したい場合は、ホスト名を含めて入力します。
※詳しい説明は [こちら](https://docs.rancherdesktop.io/ui/images/) を御覧ください。
:::

<br>

ステータスが表示されます。
ステータスが `Pulled image` になれば、 Pull 完了です。
![RancherDesktop_20230221152740.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/212972/a82fd607-d051-9199-b916-55694f24b99a.png)

`Images` 画面に戻ると、先程 Pull したイメージが表示されています。
![RancherDesktop_20230221153243.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/212972/dceefaa5-6e33-525d-c057-f9717cbbb3d8.png)


# Docker コンテナの起動
ここからは PowerShell などを利用して、 Docker コンテナを動かします。


## hello-world
今回は Windows に標準で搭載されている `Windows PowerShell` で `docker run` コマンドを試してみます。
実行する Docker イメージは [hello-world](https://hub.docker.com/_/hello-world) になります。
下記のコマンドを実行します。
```powershell
docker run hello-world
```

下記のように `Hello from Docker!` と表示されていれば問題ありません。
![RancherDesktop_20230221200512.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/212972/24bf04d7-8e96-c7bc-dfc3-8c78d82620e1.png)


## InfluxDB
次は [InfluxDB](https://hub.docker.com/_/influxdb) のコンテナを起動し、Webブラウザから管理画面にアクセスしてみます。

下記のコマンドを実行します。
```powershell
docker run -d -p 8086:8086 influxdb
```

<br>

Webブラウザで `localhost:8086' にアクセスします。
InfluxDB の管理画面が表示されれば成功です。
![RancherDesktop_20230221182905.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/212972/eefc52a2-0a99-b38a-f1b5-5c8af52b7b8a.png)

初期設定ができるか試してみます。
![RancherDesktop_20230221182943.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/212972/3a3c6462-b5ee-615d-f587-02980c94b1c2.png)

問題なくダッシュボードにアクセスできました。
![RancherDesktop_20230221183019.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/212972/7904993e-aef9-4b98-545f-4d5f4989cc1f.png)




# 設定の変更
初期設定で行った Kubernetes（K3s） や コンテナエンジンの変更方法は下記の通りです。
※画面イメージは [ターミナル]() のものになります。

## 設定画面の開き方
画面右上の `歯車マーク` をクリックします。
![RancherDesktop_20230221145842.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/212972/8f385a68-9943-0b2d-f1b1-d7c644d51cb9.png)


## Kubernetes の有効化
`Kubernetes` タブを選択し、 `Enable Kubernetes` のチェックを入れ、 `Apply` をクリックします。
![RancherDesktop_20230221192606.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/212972/053f683c-126b-e4f6-e8d8-c6b867f9621c.png)


## コンテナエンジンの変更
`Container Engine` タブを選択し、利用したいコンテナエンジンを選択し、 `Apply` をクリックします。
![RancherDesktop_20230221192618.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/212972/a1bfbb4c-f651-7dee-d284-9c82b0bf5437.png)




# 参考文献
下記のサイトを参考にさせて頂きました。

https://docs.rancherdesktop.io/next/ui/preferences/kubernetes/