ホーム チュートリアル カテゴリ Skills サイトについて
ZH EN JA KO
インストール

Raspberry PiでOpenClawをインストール・運用するガイド

· 13 分で読了

はじめに

Raspberry Pi は OpenClaw を運用するためのコストパフォーマンスに優れた選択肢です。低消費電力、小型で、24時間365日の常時稼働もまったく問題ありません。本記事では、Raspberry Pi 4 または Raspberry Pi 5 に OpenClaw をデプロイし、専用のAIアシスタントサーバーを構築する方法を詳しく解説します。

ハードウェア要件

モデル 動作体験 備考
Raspberry Pi 5 (8GB) 快適 推奨モデル、十分な性能
Raspberry Pi 5 (4GB) 良好 基本的なニーズに対応
Raspberry Pi 4 (8GB) 良好 コストパフォーマンス重視
Raspberry Pi 4 (4GB) 使用可能 不要なサービスの停止を推奨
Raspberry Pi 4 (2GB) ぎりぎり 非推奨、メモリ不足

その他の必要品

  • MicroSDカード:16GB以上、32GB Class 10以上を推奨
  • 電源アダプタ:Raspberry Pi 5 は 5V/5A USB-C、Raspberry Pi 4 は 5V/3A USB-C が必要
  • ヒートシンクまたはファン(長時間運用時の冷却のため推奨)
  • イーサネットケーブルまたはWi-Fi接続

ステップ1:OSの準備

システムイメージの書き込み

OpenClaw にはグラフィカルインターフェースが不要なため、Raspberry Pi OS Lite(64ビット)の使用を推奨します。

  1. Raspberry Pi Imager をダウンロード

  2. MicroSDカードを挿入

  3. OS を選択:Raspberry Pi OS Lite (64-bit)

  4. 詳細設定で以下を設定:

    • ホスト名(例:openclaw
    • SSH ログイン(有効化し、パスワードまたは鍵を設定)
    • Wi-Fi 情報(イーサネットを使用しない場合)
    • タイムゾーンと言語
  5. 「書き込み」をクリックして完了

初回起動と接続

MicroSD カードを Raspberry Pi に挿入し、電源を接続します。約1分後に SSH で接続します。

ssh [email protected]
# またはIPアドレスを使用
ssh [email protected]

システムの更新

sudo apt update && sudo apt upgrade -y

ステップ2:Node.js 22 (ARM) のインストール

Raspberry Pi は ARM アーキテクチャのプロセッサを使用しているため、ARM 版の Node.js をインストールする必要があります。

方法1:NodeSourceリポジトリを使用(推奨)

# NodeSourceリポジトリを追加
curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash -

# Node.jsをインストール
sudo apt install -y nodejs

# インストールの確認
node --version
npm --version

方法2:nvmを使用

# nvmをインストール
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
source ~/.bashrc

# Node.js 22をインストール
nvm install 22
nvm alias default 22

# 確認
node --version

アーキテクチャの確認

Node.js が ARM64 アーキテクチャで正常に動作していることを確認します。

node -e "console.log(process.arch)"
# 出力: arm64

ステップ3:OpenClawのインストール

sudo npm install -g openclaw@latest

インストールの確認:

openclaw --version

ステップ4:初期設定

openclaw onboard

設定ウィザードでモデルとチャネルの設定を完了します。Raspberry Pi は性能が限られているため、以下の点にご注意ください。

  • モデル選択:ローカルモデルではなく、クラウドAPI(Claude、OpenAI、Gemini)の使用を推奨
  • チャネル数:最初は同時に多くのチャネルを接続せず、実際の負荷に応じて段階的に追加
  • ログレベル:ディスク書き込みを減らすために warn に設定することを推奨

設定ファイルの場所:

~/.config/openclaw/openclaw.json5

ステップ5:起動とテスト

openclaw up

診断を実行してすべてが正常であることを確認します。

openclaw doctor

ステップ6:systemdによる自動起動の設定

Raspberry Pi では systemd で OpenClaw サービスを管理するのがベストプラクティスです。

systemdサービスファイルの作成

sudo tee /etc/systemd/system/openclaw.service > /dev/null << 'EOF'
[Unit]
Description=OpenClaw AI Assistant Platform
After=network-online.target
Wants=network-online.target

[Service]
Type=simple
User=pi
Group=pi
WorkingDirectory=/home/pi
ExecStart=/usr/bin/openclaw up
Restart=always
RestartSec=10
StandardOutput=journal
StandardError=journal
Environment=NODE_ENV=production

# リソース制限(任意)
MemoryMax=1G
CPUQuota=80%

[Install]
WantedBy=multi-user.target
EOF

nvm でインストールした Node.js を使用している場合は、ExecStart のパスをフルパスに変更する必要があります。

# openclawの実際のパスを確認
which openclaw
# 例: /home/pi/.nvm/versions/node/v22.x.x/bin/openclaw

サービスの有効化と起動

# systemd設定を再読み込み
sudo systemctl daemon-reload

# 自動起動を有効化
sudo systemctl enable openclaw

# サービスを起動
sudo systemctl start openclaw

# 状態を確認
sudo systemctl status openclaw

ログの確認

# リアルタイムでログを確認
sudo journalctl -u openclaw -f

# 最新100行を確認
sudo journalctl -u openclaw -n 100

パフォーマンスの最適化

メモリ使用量の削減

/etc/systemd/system/openclaw.service を編集し、ExecStart に Node.js のメモリパラメータを追加します。

ExecStart=/usr/bin/node --max-old-space-size=512 /usr/bin/openclaw up

swapによるメモリの拡張

メモリが不足する場合は、swap領域を増やすことができます。

# デフォルトのswapを無効化
sudo dphys-swapfile swapoff

# swapサイズを1GBに変更
sudo sed -i 's/CONF_SWAPSIZE=.*/CONF_SWAPSIZE=1024/' /etc/dphys-swapfile

# 再初期化して有効化
sudo dphys-swapfile setup
sudo dphys-swapfile swapon

# 確認
free -h

SDカードへの書き込み削減

頻繁な書き込みはSDカードの寿命を縮めます。以下の対策を推奨します。

# 一時ファイルディレクトリをメモリにマウント
echo 'tmpfs /tmp tmpfs defaults,noatime,nosuid,nodev,size=100m 0 0' | sudo tee -a /etc/fstab

# ログの書き込み頻度を削減
sudo sed -i 's/#Storage=auto/Storage=volatile/' /etc/systemd/journald.conf
sudo sed -i 's/#RuntimeMaxUse=/RuntimeMaxUse=50M/' /etc/systemd/journald.conf
sudo systemctl restart systemd-journald

不要なサービスの停止

# Bluetoothを無効化(不要な場合)
sudo systemctl disable bluetooth
sudo systemctl stop bluetooth

# avahiを無効化(.localドメイン解決が不要な場合)
sudo systemctl disable avahi-daemon
sudo systemctl stop avahi-daemon

温度監視

長時間運用する場合は、CPU温度の監視をお勧めします。

# 現在の温度を確認
vcgencmd measure_temp

# 定期監視スクリプトの設定
cat > ~/check_temp.sh << 'SCRIPT'
#!/bin/bash
TEMP=$(vcgencmd measure_temp | grep -oP '\d+\.\d+')
if (( $(echo "$TEMP > 75" | bc -l) )); then
    echo "[WARNING] CPU温度が高すぎます: ${TEMP}°C"
fi
SCRIPT
chmod +x ~/check_temp.sh

# crontabに追加し、5分ごとにチェック
(crontab -l 2>/dev/null; echo "*/5 * * * * ~/check_temp.sh >> ~/temp.log") | crontab -

温度が継続的に高い場合(70°C超)は、ヒートシンクとファンを取り付けてください。

ヘッドレスモード運用のテクニック

Raspberry Pi は通常ヘッドレスモード(モニターなし)で運用されます。以下のテクニックが役立ちます。

tmuxによるセッション管理

# tmuxをインストール
sudo apt install -y tmux

# OpenClaw専用セッションを作成
tmux new-session -d -s openclaw 'openclaw up'

# セッションに接続して出力を確認
tmux attach -t openclaw

# セッションを切り離す(Ctrl+B の後に D を押す)

固定IPの設定

/etc/dhcpcd.conf に以下を追加します。

interface eth0
static ip_address=192.168.1.100/24
static routers=192.168.1.1
static domain_name_servers=8.8.8.8 8.8.4.4

その後、ネットワークを再起動します。

sudo systemctl restart dhcpcd

トラブルシューティング

問題 解決方法
npm install でメモリ不足エラー swap を 1GB 以上に増やす
起動後すぐにクラッシュ journalctl -u openclaw でログを確認
ネットワーク接続タイムアウト DNS設定とファイアウォールを確認
SDカードが読み取り専用 ファイルシステムが破損、fsck で修復を試行
CPU温度が高すぎる ヒートシンクを取り付け、CPUQuota を下げる

まとめ

Raspberry Pi は OpenClaw を運用するための優れた選択肢です。低消費電力、低コストで、24時間365日安定して稼働できます。systemd による自動起動と適切なパフォーマンス最適化を組み合わせることで、Raspberry Pi のAIアシスタントサーバーを長期間にわたって信頼性高く運用できます。最高の体験を得るには、Raspberry Pi 5(8GB)の使用をお勧めします。

OpenClawは無料のオープンソースAIアシスタント。WhatsApp、Telegram、Discordなど多数のプラットフォームに対応