注意
- 2026/4/4
- ollama version 0.17.7よりあとのバージョンではRadeon S8060を認識せず、CPUにフォールバックするようになりました。修正方法がまだ分からないので、ollama対応待ちです。
- この記事も特定のollamaバージョンでビルドできるように修正しました。
はじめに
ollama/ollama:rocmはROCm6ベースで何時までたってもROCm7ベースにならないし、最近出たrocm-automatedに含まれるollamaはバージョンが古いのか動かないモデルがあります。実際 docker compose exec ollama ollama -vとしてもollama version is 0.0.0なんて出てきてしまいます。そのためか最近出たqwen3-coder-nextが動いてくれません。これを動かす目的でROCm7ベースのollamaのコンテナを作ってみました。
前提条件
- 環境
- EVO-X2/128GB (Ryzen AI Max+ 395 / 128GB)
- Ubuntu 24.04LTS
- 状態(以下のことが実行できる)
- ホストでdockerがインストールされ、コンテナ内でrocminfoなどが実行できる。以下の記事のステップ6までできればOK。
コンテナ構築
- コンテナ関連ファイルを置く適当なディレクリを作成し、そこにデータを置くディレクトリも作成します。以下は例示なので、皆さんの都合に合わせて場所や名前は決めて下さい。
mkdir /PATH/TO/ollama
cd /PATH/TO/ollama
mkdir data
- 以下のDockerfileとdocker-compose.ymlをそのディレクトリに置きます。コンテナのイメージ名はご自由に。手順としてはAMDが用意したROCm7が動くdev-ubuntu-24.04:7.2のコンテナにollamaをインストールします。
Dockerfile (2026/4/4更新)
FROM rocm/dev-ubuntu-24.04:7.2
SHELL ["/bin/bash", "-lc"]
ARG OLLAMA_VERSION=v0.17.7
# ollama install.sh が内部で必要とするもの + あなたの手順の zstd
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
ca-certificates curl zstd \
&& rm -rf /var/lib/apt/lists/*
# Ollama を公式インストーラで導入(手作業手順に合わせる)
RUN curl -fL "https://github.com/ollama/ollama/releases/download/${OLLAMA_VERSION}/ollama-linux-amd64.tar.zst" \
| tar --zstd -x -C /usr
RUN curl -fL "https://github.com/ollama/ollama/releases/download/${OLLAMA_VERSION}/ollama-linux-amd64-rocm.tar.zst" \
| tar --zstd -x -C /usr
# Ollama のデータ置き場(compose 側で volume マウントする想定)
VOLUME ["/root/.ollama"]
# 外からアクセスできるように
ENV OLLAMA_HOST=0.0.0.0:11434
EXPOSE 11434
# 手順どおり「ollama serve」
CMD ["ollama", "serve"]
docker-compose.yml
services:
ollama:
image: mocketech/ollama-rocm:7.2
build:
context: .
dockerfile: Dockerfile
container_name: ollama
ports:
- "11434:11434"
volumes:
- ./data:/root/.ollama
devices:
- /dev/kfd
- /dev/dri
environment:
- OLLAMA_HOST=0.0.0.0:11434
- HSA_OVERRIDE_GFX_VERSION=11.5.1
- HIP_VISIBLE_DEVICES=0
- ROCM_VISIBLE_DEVICES=0
restart: unless-stopped
起動と確認
以下を実行してコンテナを起動します。
docker compose build
docker compose up -d
動作不良が疑われる場合はログを確認して下さい。
docker compose logs -f ollama
動作確認は以下のように実行できます。実行時にモデルをダウンロードしますが、このモデルは80Bあります。初めてテストするならgemma3:4bくらいのモデルが良いでしょう。
curl http://localhost:11434/api/chat -d '{
"model": "qwen3-coder-next",
"messages": [ { "role": "user", "content": "自己紹介して下さい。"}],
"stream": false}' | jq
応答は以下のようになりました。
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 1183 100 1053 100 130 216 26 0:00:05 0:00:04 0:00:01 287
{
"model": "qwen3-coder-next",
"created_at": "2026-02-06T08:20:51.836195129Z",
"message": {
"role": "assistant",
"content": "こんにちは!私は**通義千問**(つうぎせんもん)と申します。 \nアリババグループ傘下の通義実験室が開発した大規模言語モデルです。 \n日本語を含む多くの言語に対応しており、質問に答える・文章を書く・論理的推論・プログラミングなど、さまざまなタスクをサポートします。\n\n例えば:\n- 📝 書き物(レポート、物語、メールなど)\n- 🧠 ちょっと難しい質問の解説\n- 💻 コードの作成・デバッグ(Python、JavaScript、Javaなど)\n- 🌍 異文化コミュニケーションのサポート\n\n何をお手伝いできるでしょうか? \nお気軽にご相談くださいね! 😊"
},
"done": true,
"done_reason": "stop",
"total_duration": 4862564905,
"load_duration": 49069821,
"prompt_eval_count": 15,
"prompt_eval_duration": 94170671,
"eval_count": 178,
"eval_duration": 4701894270
}
ollama、ROCmのバージョンアップ
- ROCmのバージョンはベースイメージの
ROCm/dev-ubuntu-24.04:7.2で固定しています。Dockerfile内のこの名前を変更して、コンテナを再構築して下さい。 - ollamaのバージョンアップはDockerfileのOLLAMA_VERSION変数を編集してコンテナを再構築して下さい。(2026/4/4更新)
docker compose build --no-cache
- コンテナ再構築の際にはdocker-compose.yml内のイメージ名を変更することをお勧めします。
以上です。