概要
WSL上のUbuntuでDockerを動かし、起動時にDokcerを自動起動させるための手順メモとなります。
作業内容
1. リポジトリの追加
sudo apt-get update
sudo apt-get install \\
ca-certificates \\
curl \\
gnupg \\
lsb-release
2. Docker公式のGPGキーを追加
sudo mkdir -m 0755 -p /etc/apt/keyrings
curl -fsSL <https://download.docker.com/linux/ubuntu/gpg> | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
3. リポジトリのセットアップ
echo \\
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] <https://download.docker.com/linux/ubuntu> \\
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
4. Dockerのインストール
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
これでDockerのインストールは完了です。
基本的には公式サイトに掲載されているUbuntu用の手順通りで問題ありません。
Install Docker Engine on Ubuntu
5. Dockerに権限を付与
sudo usermod -aG docker ${UserName}
管理者権限以外でもDockerコマンドを使用できるよう権限を付与します。
6. エディタをvimに変更
sudo update-alternatives --set editor /usr/bin/vim.basic
初期設定のまま今後の手順を進めていくと、nanoエディタが起動し困惑することになるので、みんなが使い慣れてるvimに変更しておきましょう!!
7. 自動で起動するための設定
sudo visudo
末尾に以下を追加します。
%docker ALL=(ALL) NOPASSWD: /usr/sbin/service docker start
これでdockerグループのユーザーがパスワード入力なしでDockerを起動できるように。
あとは使っているシェルでdockerを起動してあげます。 自分は最近fishを使い始めたのでconfig.fishに以下の内容を追記。
if test (service docker status | awk '{print $4}') = "not"
sudo service docker start > /dev/null
end
これでUbuntuを起動した際に、自動でDockerが立ち上がるようになりました!
起動の度に毎回Dockerを立ち上げるのは面倒なのでこういった作業はどんどん自動化していきたいですね!