Docker Desktopが、条件はあるものの有償化されたということ、
Docker Desktopの起動がどうも遅い。真っ赤なアイコンになってしまって起動に失敗することも度々。
なので、WSL2(Debian) + Dockerの構成でDocker Desktopはアンインストールしようと思います。
WindowsでDockerを使用する最低限の状態まで持って行くのは割愛します。
Docker Desktopから、WSL2(Debian) + Dockerにするところまでです。
Windows 11で実行しておりますが、Windows 10 Proでも実行できます。
【注意】
>
がWindowsコマンドプロンプトでのコマンド、$
がDebianの非rootユーザーでのコマンド、#
がDebianのrootユーザーでのコマンド、とします。
WSL2(Debian) + Dockerのセットアップ
- 「コマンド プロンプト」を管理者権限で実行します。
> dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
と入力して実行します。> dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
と入力して実行します。> wsl --set-default-version 2
と入力して実行します。> wsl --install -d Debian
と入力して実行します。
ここでDebianがインストールされて、Debianのターミナルになります。
Debianで使用するユーザーとパスワードを入力して、Debianのインストールを完了させます。- Install Docker Engine on Debianを参考にしていますが、本リンクのコマンドそのままではエラーでセットアップが完了できなかったため、若干変更しています。
# apt update && apt upgrade -y
と入力して実行します。# apt install apt-transport-https ca-certificates curl gnupg lsb-release
と入力して実行します。# curl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
と入力して実行します。# echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian $(lsb_release -cs) stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null
と入力して実行します。# apt update
と入力して実行します。# apt install docker-ce docker-ce-cli containerd.io
と入力して実行します。# service docker start
と入力して実行します。- 以上で、Dockerのインストールが完了して、Dockerが起動した状態になっています。
だいたいは、以下のリンクに載っています。
https://docs.microsoft.com/ja-jp/windows/wsl/setup/environment
Docker Compose(v1.29.2)のセットアップ
> wsl --install -d Debian
と入力して実行します。# curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
と入力して実行します。# chmod +x /usr/local/bin/docker-compose
と入力して実行します。- 以上で、Docker Compose v1.xのインストールが完了してコマンドが実行できます。
ただ、Docker Composeのv1.xの使用は推奨されないので、v2.xのセットアップを載せます。
Docker Compose(v2.x)のセットアップ
- 最新のバージョンを確認します。
https://github.com/docker/compose/releases/ > wsl --install -d Debian
と入力して実行します。# curl -L "https://github.com/docker/compose/releases/download/v2.2.2/docker-compose-linux-x86_64" -o /usr/libexec/docker/cli-plugins/docker-compose
と入力して実行します。
※コマンドのv2.2.2
になっている部分を、手順の最初に確認した”最新のバージョン”に読み替えて下さい。# chmod +x /usr/libexec/docker/cli-plugins/docker-compose
と入力して実行します。- 以上で、Docker Compose v2.xのインストールが完了してコマンドが実行できます。
Dockerの自動起動
wslコマンドで実行して、その度に# service docker start
を実行するのも手間なので、wslコマンドでターミナルを実行したら、Dockerのサービスが自動起動されるようにします。
-
> wsl --install -d Debian
と入力して実行します。# vi ~/.bashrc
と入力して実行します。- 以下を末尾(じゃなくても良いですが)に追記します。
service docker status > /dev/null 2>&1 if [ $? = 3 ]; then service docker start > /dev/null fi