💡
Linux Mint 21.1 (Vera)にDockerをインストールしようとしてハマったこと
このページは
Linux MintにDockerをインストールする際にハマったこととその解決方法を備忘録兼共有として記したページです。
環境
OS: Linux (Linux Mint 21.1)
事象
Linux MintはUbuntuベースのディストリビューションなので、公式ドキュメントのUbuntu向けのインストール手順に従ってDockerをインストールしようとすると、リポジトリを追加した後に打つsudo apt-get update
で以下のエラーが出ます。
the repository 'https://download.docker.com/linux/ubuntu vera release' does not have a release file.
原因
原因はリポジトリを追加する際に打つ以下のコマンドの$(lsb_release -cs)
の部分なようです。
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
このlsb_release -cs
というコマンドは実際に打ってみると、現在使用しているディストリビューションのバージョンに対応するコードネームが返ってくることが分かります。
Linux Mint 21.1のコードネームは冒頭に貼ったリンクの通りvera
です。
$lsb_release -cs
vera
上記のコマンドをそのまま打つとリポジトリのURLが以下になってしまうのですが、Ubuntu自体にはこのコードネームは存在しないためaptはリポジトリを見つけられないのです。
https://download.docker.com/linux/ubuntu vera stable
解決方法
/etc/apt/sources.list.d/docker.list
ファイルに記載されているコードネームを自身が使っているLinux Mintのバージョンに対応するUbuntuのものに置換すれば正常にリポジトリを探せるようになります。
具体的には以下のような置換をすれば良いです。
deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu vera stable
↓
deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu jammy stable
vera
以外を使っている場合は公式の対応表を参考に対応するコードネームをお探しください。
参考
Discussion