windows環境でdockerのインストール方法を解説します。
dockerは開発環境を構築するのに優秀ですので、
やっておいて損はない方法だと思います。
windows10/11
wsl2
docker 20.10.14
wsl2をインストールする
wsl2はwindows環境でlinuxが実行できる環境です。
今までは仮想環境にlinuxを使う方法がありましたが、
それよりも簡単にlinuxが実行できるようになっています。
スタートを右クリックでPowerShell(管理者)を起動します。
以下のコマンドを入力します。
wsl --install
実行すると再起動をするように表示されるので再起動をします。
再起動するとubuntuが自動で起動されます。
ユーザー名とパスワードを入力するように要求されますので、
入力をすればubuntuがの設定は完了します。
PowerShellから以下のコマンドを実行します。
wsl
ubuntuにログインできます。
ここからはubuntuでの作業になります。
dockerのインストール
dockerは公式にあるドキュメント通りにコマンドを入力していけばインストールできます。
最初にdockerに必要なパッケージをインストールします。
sudo apt update
sudo apt install \
apt-transport-https \
ca-certificates \
curl \
gnupg \
lsb-release
aptでインストールできるように、dockerのパッケージリポジトリをaptに追加
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo \
"deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
dockerのインストール
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io
docker-composeのインストール
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
これでインストール完了です。
dockerの起動は以下で行えます。
sudo service docker start
これでdockerが使えるようになります。
dockerを自動起動できるようにする
このままだとPCの電源を落とすたびにdockerが停止しますので、
PC起動時にdockerが起動するように設定します。
wsl2で動作するubuntuはサーバーで動作するものと挙動が違います。実際にはsystemctlを使っての自動起動ができなくてなっています。
そのため、wsl2上で自動起動させるにはPCを起動させるときに、
スタートアップから起動させるのが手っ取り早いです。
パスワードなしでdockerを起動させるようにする
sudo vi /etc/sudoers
一番下に以下を追加し、保存します。
ubuntu ALL=NOPASSWD: /usr/sbin/service docker start, /usr/sbin/service docker stop, /usr/sbin/service docker restart
こちらの例ではubuntuユーザーに対してdockerの起動コマンドをパスワードなしで入力できるようにしています。各環境に合わせてユーザー名を変更してください。
ここからはウィンドウズの作業です。
エディタからbatファイルを以下の内容で新規で作成します。
docker.bat
wsl /bin/bash -l -c "sudo service docker start"
winキー+rよりファイル名を指定して実行から以下を入力します。
shell:startup
入力をするとエクスプローラーのスタートアップに移動します。
docker.batを保存するとPC起動時に実行されます。