CentOS7(RedHat系ディストリビューション)でコンテナを利用したかったため、Dockerのインストールを試みました。
しかし、インストール手順を進めていくと、ダウンロードサイトからDockerのインストールに必要なリポジトリを追加するところでエラーが発生しました。
この記事ではエラーを解消する方法を記載します。
インストール手順が分からない場合は1度記載しているため、必要があればその記事を参照してください。
Dockerをインストールするためのリポジトリの追加でエラーが発生する
Dockerをインストールするためのリポジトリを下記コマンドでインストールしようとしました。
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
しかし、実行は失敗し下記のエラーメッセージが返ってきました。
[Errno 14] curl#6 - "Could not resolve host: mirror.vodien.com; Unknown error
ホスト名を解決できないというエラーです。
先ほどのコマンドで指定したURLからインターネット上の住所であるIPアドレスを特定できず、ダウンロードできませんでした。
DNSリゾルバーの設定を修正する
ホスト名の解決はDNSリゾルバーの役割なのでその設定を確認します。
DNSリゾルバーとはドメイン名とIPアドレスの紐づけをするソフトウェアです。
DNSリゾルバーの設定ファイルであるresolv.confを確認します。
cat /etc/resolv.conf
問い合わせるDNSサーバーを指定している必要があるのですが、catコマンドで確認したところ中身は空でした。
下記のコマンドでDNSサーバーをresolv.confに書き込みます。
echo "servername 8.8.8.8" >> /etc/resolv.conf
nmcliコマンドでも書き込めますが、上記はresolv.confに直接servername 8.8.8.8を書き込んでいるだけです。
8.8.8.8はGoogleのGoogleが提供するDNSサーバのIPアドレスです。
こちらをDNSサーバとして指定し利用させてもらいます。
Dockerをインストールするためのリポジトリの再度の追加を試みる
再実行すればErrno14は発生せず問題なくリポジトリの追加が完了するはずです。
別のエラーが出る場合には他の設定が必要ですが、DNSリゾルバの設定は問題なくできたと認識してよいです。


