DockerクイックスタートガイドUltralytics
このガイドは、Ultralytics プロジェクトのために Docker 環境をセットアップするための包括的な入門書となります。Dockerはコンテナでアプリケーションを開発、出荷、実行するためのプラットフォームです。特に、ソフトウェアがどこにデプロイされても常に同じように動作することを保証するのに有益です。詳細は、Docker Hubの Ultralytics Dockerリポジトリをご覧ください。
何を学ぶか
- NVIDIAをサポートするDockerのセットアップ
- Ultralytics Dockerイメージのインストール
- DockerコンテナでUltralytics 。
- コンテナへのローカルディレクトリのマウント
前提条件
- お使いのシステムにDockerがインストールされていることを確認してください。インストールされていない場合は、Dockerのウェブサイトからダウンロードしてインストールしてください。
- システムにNVIDIA GPUが搭載され、NVIDIAドライバがインストールされていることを確認してください。
NVIDIAサポートでDockerをセットアップする
まず、NVIDIAドライバが正しくインストールされていることを確認します:
NVIDIA Docker Runtimeのインストール
では、DockerコンテナでGPUサポートを有効にするために、NVIDIA Dockerランタイムをインストールしましょう:
# Add NVIDIA package repositories
curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
distribution=$(lsb_release -cs)
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list
# Install NVIDIA Docker runtime
sudo apt-get update
sudo apt-get install -y nvidia-docker2
# Restart Docker service to apply changes
sudo systemctl restart docker
DockerでNVIDIAランタイムを検証する
走る docker info | grep -i runtime
を確保する。 nvidia
がランタイムのリストに表示される:
Ultralytics Dockerイメージのインストール
Ultralytics は、様々なプラットフォームやユースケースに最適化された複数のDockerイメージを提供している:
- Dockerfile:トレーニングに最適なGPUイメージ。
- Dockerfile-arm64:ARM64 アーキテクチャ用で、Raspberry Pi などのデバイスに適しています。
- Dockerfile-cpu:推論と非GPU環境用のCPU専用バージョン。
- Dockerfile-jetson:NVIDIA Jetsonデバイス用に最適化。
- Dockerfile-python :軽量アプリケーションのための最小限のPython 環境。
- Dockerfile-conda:Conda経由でインストールされたMiniconda3とUltralytics パッケージを含みます。
最新のイメージを引き出す:
# Set image name as a variable
t=ultralytics/ultralytics:latest
# Pull the latest Ultralytics image from Docker Hub
sudo docker pull $t
DockerコンテナでUltralytics 。
ここでは、Ultralytics Dockerコンテナを実行する方法を説明する:
# Run with all GPUs
sudo docker run -it --ipc=host --gpus all $t
# Run specifying which GPUs to use
sudo docker run -it --ipc=host --gpus '"device=2,3"' $t
について -it
フラグは擬似TTYを割り当て、標準入力をオープンにしておく。また --ipc=host
フラグは、プロセス間でメモリーを共有するのに不可欠な、ホストの IPC 名前空間の共有を可能にする。このフラグは --gpus
フラグは、コンテナがホストのGPUにアクセスすることを許可する。
ファイルのアクセシビリティについて
コンテナ内でローカルマシンのファイルを操作するには、Dockerボリュームを使用する:
# Mount a local directory into the container
sudo docker run -it --ipc=host --gpus all -v /path/on/host:/path/in/container $t
交換 /path/on/host
をローカルマシンのディレクトリパスと /path/in/container
をDockerコンテナ内の希望のパスに置き換える。
おめでとうございます!これでDockerでUltralytics 、その強力な機能を利用する準備が整いました。別のインストール方法については、Ultralytics クイックスタート・ドキュメントをご覧ください。