Docker インテグレーション
wandb) は、この状態を保持するために WANDB_DOCKER 環境変数を参照します。W&B には、この状態を自動的に設定するためのヘルパーがいくつか用意されています。
以下のセクションでは、ローカル開発から Kubernetes ベースのトレーニングまで、さまざまな環境で WANDB_DOCKER 環境変数を設定する方法について説明します。
ローカル開発
wandb docker は、Dockerコンテナーを起動し、wandb の環境変数を渡してコードをマウントし、wandb がインストールされている状態を確保するコマンドです。デフォルトでは、このコマンドは TensorFlow、PyTorch、Keras、Jupyter がインストールされた Docker イメージ を使用します。同じコマンドで独自の Docker イメージ を起動することもできます: wandb docker my/image:latest。このコマンドは現在のディレクトリーをコンテナー内の /app ディレクトリーにマウントします。これは --dir フラグで変更できます。
本番
wandb docker-run コマンドは、本番ワークロード向けに提供されています。これは docker run コマンドをラップし、認証情報と WANDB_DOCKER 環境変数をコマンド呼び出しに追加する、nvidia-docker のドロップイン置換です。--runtime フラグを渡さず、マシン上で nvidia-docker が利用可能な場合は、ランタイムが nvidia に設定されることも保証されます。
Kubernetes
WANDB_DOCKER 環境変数を自動的に設定します。
トレーニング環境を復元する
WANDB_DOCKER 環境変数が設定されると、それを使用して後から元のトレーニング環境を再現できます。
run が WANDB_DOCKER 環境変数でインストルメントされている場合、wandb restore username/project:run_id を実行すると、コードを復元した新しいブランチがチェックアウトされ、その後、元のコマンドがあらかじめ設定された、トレーニングに使用された正確な Docker イメージ が起動されます。