OllamaのDockerコンテナ内でOpenClawを実行し、ネットワークを簡素化する

あるr/openclawユーザーが、OpenClawをOllamaと同じDockerコンテナ内に配置するセットアップを共有しました。これにより、host.docker.internalやコンテナホスト名が不要になります。アプローチは簡単で、公式のollama/ollamaイメージをベースに、その中にOpenClawをインストールし、OpenClawが127.0.0.1:11434でOllamaと通信するようにします。これにより、一般的なネットワークの摩擦を回避できますが、RAM使用量が増加します。
主なセットアップ手順
GPUサポート、永続的なモデルストレージ、ポート11434と18789(OpenClawのゲートウェイ用)を使用してコンテナを起動します。
docker run -d \
--name ollamaopenclaw \
--gpus=all \
-v ollama_docker:/root/.ollama \
-p 11434:11434 \
-p 18789:18789 \
ollama/ollama
ポートをlocalhostのみにバインドする場合:
docker run -d \
--name ollamaopenclaw \
--gpus=all \
-v ollama_docker:/root/.ollama \
-p 127.0.0.1:11434:11434 \
-p 127.0.0.1:18789:18789 \
ollama/ollama
コンテナ内でシェルを開き、OpenClawをインストールします。
docker exec -it ollamaopenclaw sh
apt-get update && apt-get install -y curl git bash ca-certificates
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bash
export PATH="$HOME/.openclaw/bin:$PATH"
openclaw --version
モデルをプルします(小規模なQwenバリアントでテスト済み)。
ollama pull qwen3.5:0.8b
ollama pull qwen3.5:2b
ollama pull qwen3.5:4b
ollama list
OpenClawのゲートウェイを設定します。
export OLLAMA_API_KEY="ollama-local"
openclaw config set gateway.bind lan
openclaw config set gateway.port 18789
openclaw config set gateway.controlUi.allowedOrigins '["http://localhost:18789","http://127.0.0.1:18789"]' --strict-json
ゲートウェイを起動します(ターミナルは開いたままにします)。
openclaw gateway run --bind lan --port 18789 --allow-unconfigured
別のターミナルで、再度コンテナに入り、OpenClawを実行します。
docker exec -it ollamaopenclaw sh
export PATH="$HOME/.openclaw/bin:$PATH"
export OLLAMA_API_KEY="ollama-local"
# その後、openclawコマンドを実行
結果とトレードオフ
このセットアップは機能します。OpenClawはOllamaに127.0.0.1:11434を使用し、追加のネットワーク設定は不要です。ポートとストレージは分離されたままです。ただし、RAM使用量が多く、大きなプロンプトは小さなローカルモデル(0.8B~4Bでテスト)を圧倒します。ユーザーは、これは軽量なソリューションではないが、コンテナ分離の観点からはよりクリーンだと指摘しています。
対象ユーザー
ホストネットワーキングやhost.docker.internalの煩わしさを避けるために、OpenClawとOllamaを単一のDockerコンテナ内で実行したい開発者。特にローカルまたはCI向けのLLMツールチェーンに適しています。
📖 ソース全文を読む: r/openclaw
👀 See Also

AIコーディングエージェントにおける「一気に噛みつく」対「少しずつかじる」アプローチ
NLP研究者が、AIコーディングエージェントを使用する際の2つの思考モデルを説明しています。それは、claude.mdのような包括的な指示ファイルを使用する「バイト」アプローチと、複数回の反復を通じて段階的に改善する「ニブル」アプローチです。

Claude Codeを使ったプレコーディングルーチン:コードを書く前に5つのMCPサーバー
ある開発者が、5つのMCPサーバー(メモリ、コードベースグラフ、Tavily検索、Context7ドキュメント)とセーフティフックを使用し、幻覚や無駄な編集を劇的に減らす60〜90秒のルーティンを公開しています。

クロードに譲歩せず敵対的議論をさせるための5つの効果的なプロンプト調整法
Claudeが議論相手として曖昧な態度やお世辞、虚偽を防ぐための5つの具体的なプロンプトエンジニアリング手法を、sparwithai.comの構築経験に基づいて紹介します。

ディスパッチャーパターンを使用してClaude APIコストを95%削減
ある開発者が、重い作業を月額200ドルのMaxサブスクリプションのClaude Code CLIに委譲するディスパッチャーパターンを実装することで、Claude APIのコストを月額800〜2,000ドルから215ドルに削減しました。APIのオーバーヘッドコストは月額わずか5〜15ドルです。