Docker #
OMUI ServerにはPythonがあらかじめインストールされています。 そのため、Dockerを使わなくてもvenvなどを使って仮想環境を作ることができますが、Pythonのバージョンが古い可能性があるためおすすめしません。
ここでは、Dockerの基本的な使い方を説明します。 Dockerについて詳しく知りたい場合は 公式ドキュメント などを確認してください。
Rootless Dockerの設定 #
一度のみ行ってください。インストール済みの場合は不要です
OMUI Serverでは Rootless Docker を導入しています。 Rootless Dockerを使うことで、ユーザーごとにDockerコンテナやDockerイメージの管理が可能になります。 以下のコマンドを実行し、Rootless Dockerの設定を行ってください。
$ rootless-docker-install
Docker コンテナ #
$ docker container run [OPTIONS] IMAGE [COMMAND] [ARG...]
を実行すると、Dockerコンテナを新規作成し、コンテナ内で [COMMAND] を実行します。
代表的なオプションとして次のようなものがあります。
# コンテナ終了時に、自動的に削除
--rm
# SRCをDSTにバインドマウントする
--volume SRC:DST
# コンテナ内の作業ディレクトリのパス
--workdir PATH
# GPUの割り当て
--gpus DEVICE
以下の例は、
Docker Hub で公開されている nvidia/cuda:12.5.1-cudnn-devel-ubuntu22.04 というDockerイメージを用い、コンテナ内で nvidia-smi コマンドを実行する例です。
$ docker container run \
--rm \
--gpus '"device=0"' \
nvidia/cuda:12.5.1-cudnn-devel-ubuntu22.04 \
nvidia-smi
Docker イメージ #
Dockerイメージを用意するには、Dockerfileを使って自分で一からDockerイメージを作成するか、Dockerレジストリから取得する必要があります。 代表的なレジストリとして、 Docker Hub や NVIDIA NGC カタログ があります。
CUDA Toolkitが含まれるDockerイメージを選ぶ際は、イメージに含まれるCUDA Toolkitのバージョンに注意してください。 サーバー上で
nvidia-smiコマンドを実行したときに右上に表示されるバージョンが、対応しているCUDA Toolkitの最新のバージョンです。(
nvidia-smiで表示されるバージョン ≦ CUDA Toolkitのバージョン)
取得済のイメージの確認には次のコマンドを使用します
$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
ubuntu latest 35a88802559d 5 weeks ago 78.1MB
Dockerイメージを削除するには次のコマンドを実行します。
$ docker image rm IMAGE
使用しなくなったイメージは適宜削除するようにお願いします。