👌
RHEL7におけるdockerインストール
インストールコマンド一式
Red Hat Enterprise Linux 7 (RHEL7)に、docker + nvidia docker環境を構築する場合は、下記のコマンドを実施します。
# install docker
sudo yum install yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum install docker-ce docker-ce-cli containerd.io
sudo systemctl start docker
# install nvidia settings
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.repo | sudo tee /etc/yum.repos.d/nvidia-docker.repo
sudo yum clean expire-cache
sudo yum install nvidia-container-toolkit
docker リポジトリへのアクセスエラー
sudo yum install docker-ce docker-ce-cli containerd.io
でリポジトリにアクセスできず、失敗する場合があります。その場合は、/etc/yum.repos.d/docker-ce.repo
の一部を書き換えます。$relserver
となっているところを今回はRHEL7のため7
という数字に置き換えます。下記は一例ですが、docker-ce.repo
に書かれている同様の箇所を変更します。
= [docker-ce-stable]
= name=Docker CE Stable - $basearch
- baseurl=https://download.docker.com/linux/centos/$relserver/$basearch/stable
+ baseurl=https://download.docker.com/linux/centos/7/$basearch/stable
= enabled=1
= gpgcheck=1
= gpgkey=https://download.docker.com/linux/centos/gpg
上記対応が必要となる理由ですが、今回試した環境では $relserver
の展開文字列が 7Server
となっていました。本来 $relserver
の変数は、下記のページにあるように /etc/yum.conf
に distroverpkg=value
として宣言されているようです。
- Red Hat Customer Portal 8.4.3. USING YUM VARIABLES
今回は強制的に docker-ce.repo
を書き換えましたが、上記ファイルに宣言を設定するというのも対応方法になるはずです。
参考資料
- Docker docs: Install Docker Engine on CentOS
- Nvidia Cloud Native Technologies: Installation Guide: Installing on RHEL7
Discussion