VPSにローカルLLMを構築する|公式の「3行」が89分で失敗した話と、認証がないことへの備え
本記事はプロモーションを含みます。 記事内の一部のリンクは広告リンクです。リンクの有無で内容を変えていません。 掲載している数値はすべて自分のサーバーで実際に測った値か、公式ドキュメントの記載です。 ローカルLLMの構築記事を探すと、出てくるのは自分のPC(WindowsやMac、自作機)か、自社サーバー(ハードウェアを買う話)のどちらかです。 VPSに立てる話が、ほとんど見つかりません。 私は、さくらのVPS 2Gプラン(GPUなし・CPUのみ)にOllamaを入れて動かしています。その過程で、PCに入れるのとは違う問題に2つぶつかりました。 どちらも、PCなら起きないか、起きても実害が出ないものです。 確認できたこと 公式のインストールスクリプトは、1.34GBを一発勝負で落とす構造。実測で89分かけて55.6%で切れた。途中から再開できない wget -c で落としてから展開すれば2分1秒で終わった 公式のアップグレード手順も、同じスクリプトの再実行。つまり更新のたびに同じ賭けをする Ollamaに認証はない。 公式ドキュメントには「公開のしかた」は書いてあるが、公開したあと誰が叩けるのかは書かれていない systemdでメモリ枠を切ると、モデルが暴れても同居しているサービスが巻き添えにならない PCに入れるのとVPSに入れるのは、前提が3つ違う 自分のPC VPS GPU 載っていることがある 基本的にない 稼働 使うときだけ 24時間動き続ける ネットワーク 家庭内LANの内側 グローバルIPで直結 3つ目が、この記事のいちばん重要な点です。 自分のPCで OLLAMA_HOST を広げても、届くのは家の中だけです。VPSで同じことをすると、インターネット全体から届きます。 GPUがないことの影響(どのモデルまで載るか)はGPUなしでローカルLLMは使えるのかに分けて書きました。この記事は構築の手順と、立てたあとの安全に絞ります。 公式の「3行」は、1.34GBの一発勝負 Ollamaの公式インストール手順はこれです。 curl -fsSL https://ollama.com/install.sh | sh これを実行したら、89分かけて55.6%で切れました。 curl: (92) HTTP/2 stream 1 was not closed cleanly: PROTOCOL_ERROR (err 1) tar: Unexpected EOF in archive tar: Error is not recoverable: exiting now やり直しです。 このスクリプトは curl | zstd -d | tar -x と直結していて、ダウンロードしながら展開しています。 そのため途中で切れても再開できません。 ...