AIサーバー構築

普段使いのノートPCにLM studio入れて使ってましたが…
思考中、めっちゃ重くなるのと…

やっぱり遅い!

と、言う事で、数年前に中古で買ってメイン機として使っていたMacPro Late2013(通称ゴミ箱)Xeon 12core ram:64GB ssd:1TB D700x2
アップルがIntelMacのサポートを打切り、新しいOSが入れられなくなったので
Ubuntuを入れてAIサーバとして利用しようと考えました。

最初はノートPC同様LM studio入れましたが、ubuntuの日本語入力に慣れないので
ollama & Open WebUIの構成で環境構築しノートPCからWeb経由でアクセスする事としたので、その備忘録です。

ちなみに手順もローカルLLMに相談しながらトライ&エラーを繰り返しました。

ローカルLLM作成手順

以下は、Ubuntu 24.04.4 を USB メモリからインストールし、SSH サーバー、Python 環境、Docker、Ollama、Open WebUI のセットアップを行う手順です。

1. Ubuntu 24.04.4 のインストール

  1. 空の USB メモリ(8 GB 以上)を用意します。
  2. ブートUSB作成ツール を準備します。
  3. Ubuntu ディスクイメージをダウンロードします。
    https://releases.ubuntu.com/noble/ubuntu-24.04.4-desktop-amd64.iso
  4. balenaEtcher でイメージを USB メモリに書き込みます。
  5. MacPro をシャットダウンし、Option キー(Alt)を押しながら電源オンします。
  6. ブートセレクタが表示されたらオレンジのディスクを選択し Enter で進めます。
  7. この時点で日本語は無いのでEnglishで進めます言語選択画面
  8. **アクセシビリティ設定画面…とりあえずそのままNext**
  9. キーボードレイアウト設定画面
  10. インターネット接続画面
  11. アップデート画面:Update Nowボタンを押すと、Updateが始まり、Updateが終わると勝手に画面が閉じる
  12. インストール
  13. インストールの種類
  14. アプリケーション
  15. ディスクのセットアップ
  16. マニュアル・パーティショニング
  17. パーティションの編集
  18. アカウント作成
  19. タイムゾーン設定
  20. 最終確認とインストール実行
     

2. SSH サーバーのインストール

sudo apt install openssh-server
sudo systemctl status ssh
sudo systemctl enable ssh
sudo systemctl start ssh

ポート 22 の開放

sudo ufw status
sudo ufw allow 22
sudo ufw reload
sudo ufw status
sudo ufw enable

3. 日本語化

sudo apt update
sudo apt install -y language-pack-ja
sudo dpkg-reconfigure locales
# 以下を選択:
#   ja_JP.UTF-8 UTF-8
#   ja_JP.UTF-8

4. Python 環境の構築

python3 --version
pip3 --version
sudo apt install python3-pip
sudo apt install python3.12-venv
python3 -m venv venv
source venv/bin/activate   # (venv) で確認できる
# ディスエクト:
(venv)user@userName:deactivate
sudo apt install python-is-python3
python --version

5. Docker のインストール

sudo apt update
sudo apt install ca-certificates curl gnupg
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg \
    -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

リポジトリの追加

echo \
"deb [arch=$(dpkg --print-architecture) \
signed-by=/etc/apt/keyrings/docker.asc] \
https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" \
| sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update
sudo groupadd docker
sudo usermod -aG docker <ユーザー名>
newgrp docker sudo apt install docker-ce docker-ce-cli containerd.io \ docker-buildx-plugin docker-compose-plugin docker --version docker compose version

6. Ollama のインストール

# ダウンロードとインストール
wget https://ollama.ai/install.sh
sh ./install.sh
# 状態確認
sudo systemctl status ollama
# 外部からの接続を確認
sudo ss -napt | grep ollama
LISTEN 0 4096 127.0.0.1:11434 0.0.0.0:* users:(("ollama",pid=5449,fd=3))
# .serviceファイルの修正
sudo systemctl edit ollama.service
[Service]
Environment="OLLAMA_HOST=0.0.0.0"
Environment="OLLAMA_ORIGINS=192.168.*,172.*"
# サービスを再起動して再度確認
sudo systemctl restart ollama.service
sudo ss -napt | grep ollama
LISTEN 0 4096 *:11434 *:* users:(("ollama",pid=5548,fd=3))
# モデルのインストール
ollama pull llama3:8b
# モデルの実行
ollama run llama3:8b
# モデルのアンインストール
ollama rm llama3:8b

確認:

$ ollama -v
$ ollama --version
$ systemctl status ollama.service

7. Open WebUI を Docker コンテナとして実行

docker run -d -p 3000:8080 \
    --add-host=host.docker.internal:host-gateway \
    -v open-webui:/app/backend/data \
    --name open-webui \
    --restart always ghcr.io/open-webui/open-webui:latest

e.g. コンテナに入るには:

docker exec -it <コンテナ名またはID> bash

 

ローカルLLM

2016年熊本地震以来、新型コロナの流行など…
色々ありすぎて放置していたサーバーも
なんとか新しいサーバーに引越し開始しました。

そして先日の令和8年熊本地震…

世の中はAIブーム

とりあえず…

サーバーの引っ越しついでに、Wordpressのバージョンアップ!

普段使いのノートPCにローカルLLMを入れ
AI君に「こんな事やりたいんだけど設定ファイル作って!」とか…

結構時間かかるので、その間は別件こなしながら
のんびりやっています。

Webサイトの構築 prologue

はじめに

目的

CMSやSNSについての学習の為、WordPressやOpenPNEのカスタマイズや運用の検証と実習を行う事を目的とする。

前提条件

OSはLinuxであれば何でもいいのだが、使い慣れたCentOSと、現在契約中のGMOクラウドPublicのS1パックに、新たに仮想サーバを構築するものとする。

サーバー環境 GMOクラウド提供のPublicクラウドS1パック
OS CentOS 6.2 kvm
クラウドサーバに用意されているテンプレート

考察

目的の為に、必要なアプリケーションについて考える。

Apache2.2

OS標準のバージョンを利用し、問題があれば変更するものとする。

WordPress4.3.1

公式ページ上には「PHP 5.2.4 以上、かつ MySQL 5.0 以上であれば WordPress は動作します」とあるが、いずれもサポートが終了しているバージョンである為、推奨のバージョンで構築する。

推奨動作環境

PHP 5.6以上
MySQL 5.5以上

OpenPNE3.8.17

今回は、WordPressに主眼を置き、WordPressの推奨環境に合わせて構築する。

推奨動作環境

PHP 5.2以上
MySQL 5.1以上

パッケージの決定

考察結果を元に、導入するパッケージを決定する。

Apache2.2

WEBサーバのフロントエンドとして、OS標準のものを利用する。

MySQL5.5

WordPress・OpenPNEのデータ保持の為必須である。

PHP5.6

WWordPress・OpenPNEのスクリプトの実行の為必須である。

php-mysql

PHPからMySQLにアクセスする為のライブラリである。

WordPress4.3.1

現在最新のWordPress本体である。

OpenPNE3.8.17

現在最新のOpenPNE本体である。

Webサイトの構築 Apache2.2
Webサイトの構築 MySQL5.5
Webサイトの構築 PHP5.6
Webサイトの構築 WordPress4.3.1
Webサイトの構築 OpenPNE3.8.17