Linux サーバー上で nvidia-docker 環境を設定するプロセスの詳細な説明

Linux サーバー上で nvidia-docker 環境を設定するプロセスの詳細な説明

Docker はコンテナに相当し、必要な動作環境に応じて対応する動作環境を構築できます。このとき、各環境は互いに分離されているため、新しいコードを実行する必要があるときに、元の実行コードに必要な環境を破棄する必要はありません。各環境は、各コンテナが分離しているのと同じように、互いに分離されています。

dockerはCPU上でのみ実行するため、GPU上で実行する必要があるサーバーにはnvidia-dockerが提供されます。

sudo apt-get install -y nvidia-docker2
sudo pkill -SIGHUP docker

サーバーのサブアカウントでnvidia-dockerを構築する方法については、Baiduの各場所で説明が異なります。そのため、Googleで関連文書を参照した後、サーバーのサブアカウントでnvidia-dockerを構築する方法を次に示します。

簡単に言うと、nvidia-docker をインストールするには 3 つの手順があります。

NVIDIA ドライバーをインストールする
Dockerをインストールする
nvidia-dockerをインストールする

グラフィックドライバーをインストールする

当社のサーバーやほとんどのサーバーでは、マシンのインストール時にこの手順が必要なので、この手順は直接無視します。具体的な質問については、Baidu で検索できます。

Dockerをインストールする

Dockerには、コミュニティエディション(CE)とエンタープライズエディション(EE)の2つのバージョンがあります。NVIDIAグラフィックスドライバーと同様に、適切なインストールファイルを選択するにはLinuxバージョンを知る必要があります。次のインストールバージョンは、Ubuntu 16.04にコミュニティバージョンをインストールするためのものです。

Dockerをインストールする手順は次のとおりです。

まず、コンピュータから古いバージョンのDockerを削除する必要があります。マシンにDockerをインストールするのが初めてであることが確実な場合は、この手順は省略できます。そうでない場合は、次のコマンドを実行することをお勧めします。

sudo apt-get remove docker docker-engine docker.io

マシンに docker がインストールされていない場合は、apt-get がそのことを通知します。

次に、Docker をインストールします。新しいバージョンがリリースされたときにリポジトリから簡単に更新を取得できるように、リポジトリから Docker をインストールすることをお勧めします。

リポジトリからdockerをインストールするには、まずdockerリポジトリを作成する必要があります。通常はaptパッケージを更新する必要があります。

apt パッケージインデックスを更新する

sudo apt-get update

次に、aptがHTTP経由で通信できるようにパッケージをインストールします。

sudo apt-get インストール \
  apt-transport-https \
  ca証明書\
  カール\
  ソフトウェアプロパティ共通

次に、Dockerの公式GPGキーを追加します

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo pt-key add -

次のコマンドが9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88を出力することを確認します。

sudo apt-key fingerprint 0EBFCD88

次に、次のコマンドを実行して、apt に安定リポジトリを使用するように指示します。

sudo aptリポジトリを追加\
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
(usb_release -cs) \
安定した"

この時点で、ナレッジベースの構築が完了しました。次に、aptパッケージインデックスを更新し、Docker CEをインストールします。

sudo apt-get update && apt-get install docker-ce

この手順の後は、インストールを待つだけです。ダウンロードには長い時間がかかります。そのままお待ちください。

dockerをインストールした後、もちろんインストールが成功したかどうかを確認する必要があります。

有名なhello-worldイメージを使用して、dockerのインストールが成功したかどうかをテストします。

sudo docker run hello-world

次のインターフェースが表示されれば、Dockerが正常にインストールされたことがわかります。

nvidia-dockerをインストールする

次のステップでは、コンテナが GPU 環境を使用できるようにする Docker のプラグインである nvidia-docker をインストールして作業を完了します。

まず、既存のnvidia-dockerを削除する必要があります

docker ボリューム ls -q -f ドライバー = nvidia-docker | xargs -r -I{} -n1 docker ps -q -a -f volum = {} | xargs -r docker
sudo apt-get purge -y nvidia-docker

以前にインストールしたことがない場合は、この手順をスキップできます。

次に、必要なリポジトリを追加し、aptパッケージインデックスを更新します。

curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | \
sudo apt-keyを追加 -

curl -s -L https://nvidia.github.io/nvidia-docker/ubuntu16.04/amd64/nvidia-docker.list | \
sudo tee /etc/apt/sources.list.d/nvidia-docker.list

sudo apt-getアップデート

最後に、nvidia-dockerをインストールします。

sudo apt-get install -y nvidia-docker2
sudo pkill -SIGHUP dockerd

インストールが成功したら、インストールしたnvidia-dockerを確認します。

docker run --runtime=nvidia --rm nvidia/cuda nvidia-smi

次のコマンドを初めて使用する場合は、Docker が何かをダウンロードしようとしていることがわかります。

ここで、インストールプロセス全体が完了します。

速報です!かつて、サーバーのグラフィックカードがクラッシュした後、グラフィックカードのドライバーを再インストールしたところ、nvidia-docker環境が消えていたことに驚きました。しかし、次のように入力しました。

docker version

docker が存在することが示されているので、前のインストール手順に従って nvidia-docker をインストールするだけです。インストールが成功すると、幸いなことに、dockerfile に従って構築された実験環境がまだ存在していることがわかります。

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Docker に influxdb をインストールするための詳細なチュートリアル (パフォーマンス テスト)
  • Docker 国内イメージ取得とイメージ高速化のレジストリミラー設定変更の詳しい説明
  • Dockerコンテナを使用してホストネットワークにアクセスする方法
  • Dockerfile の COPY コマンドと ADD コマンドの詳細な説明
  • 最高のDockerfileを書く方法
  • Mac OS に Vagrant と Docker をインストールするチュートリアル
  • Dockerコンテナの起動後にポートマッピングを追加する
  • Docker コンテナ アプリケーションで避けるべき 10 の悪い習慣

<<:  条件によるMysqlカウントの複数の実装方法を詳細に解説

>>:  Vueはボールのスライディングクロス効果を実現します

推薦する

VMware Workstation のダウンロードとインストールの詳細なチュートリアル

仮想マシンは非常に便利なテストソフトウェアです。ハードウェアに損傷を与えることなく、さまざまなテスト...

Linux の一般的なハードディスク管理コマンドの紹介

目次1. dfコマンド2. duコマンド3. fsckファイルシステム修復コマンド4. ディスクステ...

Linux で ffmpeg をインストールするための詳細なチュートリアル

1. CentOS Linuxにffmpegをインストールする1.ダウンロードして解凍する http...

Vue3は画像拡大鏡効果を実現します

この記事の例では、画像拡大鏡効果を実現するためのVue3の具体的なコードを参考までに共有しています。...

mysql indexof関数の使用手順

以下のように表示されます。 LOCATE(部分文字列、文字列)文字列 str 内の部分文字列 sub...

CentOS7 64 ビットでの MySQL 5.7 のインストールと設定のチュートリアル

インストール環境: CentOS7 64ビットMINI版、MySQL5.7をインストール1. YUM...

あなたのウェブサイトはIE8に適していますか?

オリンピック期間中にIE8ベータ2がリリースされ、英語版のリリースに合わせて中国語版も第一波でリリー...

...

docker compose を使用して FastDfs ファイル サーバーをインストールする詳細な例

ドッカーの作成 バージョン: '2' サービス: fastdfsトラッカー: ホスト...

JavaScript ツールチェーンの不完全なガイド

目次概要静的型チェックコードスタイルチェック(Linter)パッケージマネージャーモジュールローダー...

docker run 起動パラメータ コマンドを表示する方法 (推奨)

runlike を使用してコンテナの docker run 起動パラメータを表示します。 pipを...

Vueはショッピングカート決済機能をシミュレートします

この記事では、ショッピングカート決済機能を実現するためのVueの具体的なコードを例として紹介します。...

div の幅が width:100% に設定されていて、パディングまたはマージンが親要素を超えてしまう問題の解決方法

序文この記事では、div の幅を 100% に設定し、親要素を超えてパディングまたはマージンを設定す...

XHTML 3つの文書型宣言

XHTML は 3 つのドキュメント タイプ宣言を定義します。最もよく使用されるのは XHTML T...