💡

Linux Mint 21.1 (Vera)にDockerをインストールしようとしてハマったこと

2023/03/24に公開

このページは

Linux MintにDockerをインストールする際にハマったこととその解決方法を備忘録兼共有として記したページです。

環境

OS: Linux (Linux Mint 21.1)

https://linuxmint.com/download.php

事象

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.

https://docs.docker.com/engine/install/ubuntu/

原因

原因はリポジトリを追加する際に打つ以下のコマンドの$(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以外を使っている場合は公式の対応表を参考に対応するコードネームをお探しください。
https://linuxmint.com/download_all.php

参考

https://www.youtube.com/watch?v=Y4ut8kKpPUs

Discussion