以下の内容はhttps://ishikawa-pro.hatenablog.com/entry/2025/01/16/192126より取得しました。


Docker 上で GPU を使って Ollama を動かす

こんにちは。
今日は 自作 PC 上で Docker を入れて、 Ollama を動かしてみたので、その話です。

Ollama を Docker で動かす

PC 上で LLM を動かして遊ぶために Ollama を入れました。PC をなるべく汚したくないので、ホストマシン上に直接入れるのではなく Docker 上で動くようにしました。
公式の Docker image が提供されているので、それを利用しました。

https://hub.docker.com/r/ollama/ollama

PC には GTX 1660 SUPER が積んであるので、ゴールは GPU で推論するところですが、いきなりコンテナ上で NVIDIAGPU を使うとうまくいかない可能性もあるので、とりあえず CPU only で動くかどうかを確認しました。

docker run -d -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama

ここは難なく動きました。
次はコンテナ上で GPU を使って動かします。
上に貼った Ollama の Docker image のページにも書いてありますが、コンテナから NVIDIAGPU を使うには NVIDIA Container Toolkit⁠ を入れておく必要があります。手順書通りに Apt 経由でツールをインストールしてセットアップすれば問題なく使えました。昔はもっと苦戦した気がしましたがスムーズにできてよかったです。
↓のコマンドでコンテナから GPU を使える状態にして ollama を起動します。
--gpus=all が増えただけですね。

docker run -d --gpus=all -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama

動作確認

試しに LLM とやりとりをして、うまく GPU が使われているか確認しました。
LLM とのやりとりは、この記事では紹介しませんが Open WebUI を使っています。   GPUの使用率を確認するのは nvtop というツールを入れて CLI で確認しました。

github.com

下記は llama3.2:1b-instruct-fp16 を使って質問しているスクリーンショットです。
返答内容についてはかなりハルシネーションを起こしているようでした笑

Open WebUI でチャットしている様子

下記は nvtop のスクリーンショットです。LLM とチャットしている間は GPU の使用率が上がっているのがわかります。

nvtop で GPU をモニタリングしている様子

チャットのレスポンスに関してはかなり早かったです。

まとめ

今日は、Docker を入れてコンテナ上で GPU を使って Ollama を動かすところまで紹介しました。
コンテナからGPUを使うのも特に問題なく進められてよかったです。
次は、 Open WebUI で ChatGPT 風の UI でチャットできる環境を作ってみたので、その話をまとめようかと思います。




以上の内容はhttps://ishikawa-pro.hatenablog.com/entry/2025/01/16/192126より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14