Featured image of post Raspberry 5 安裝 OpenClaw,並設定外網穿透

Raspberry 5 安裝 OpenClaw,並設定外網穿透

開始嘗試養龍蝦

最近工作上開始導入了透過 SDD 協作進行產品開發,在研究的過程中對於 skill 設計還有 Agent 的交互有了更多的理解,因此覺得是時候來摸摸看當紅的龍蝦 OpenClaw

我想要透過龍蝦做什麼?

OpenClaw 已經紅一陣子了,最早有先在公司的電腦從 local 安裝看看,了解他的安裝模式以及執行方法,後續也有比較完整的了解如何透過 Docker 部署,讓環境隔離。

但我其實還沒想到需要龍蝦做什麼,尤其在自己已經有比較完整的 N8N 系統,現階段還沒有使用龍蝦的必要性,想說我的生活應該還不至於需要一個超完整的 AI 助理。

但手就會癢呀~~~還是想跟風知道一下龍蝦後面的原理,去理解他可以完成的工作,因此就只是存粹的定下了目標:

  1. 學習安裝龍蝦
  2. 對現代 Skill 的理解加深
  3. 了解應用場景以及如何實現

選擇硬體 Raspberry 5

最開始我是拿出我的那台 2012 Macbook Pro 來安裝,想說雖然是舊電腦,但擁有 16GB Ram 的狀況下應該沒什麼問題吧!

然而安裝過後,滿 Lag 而且 Gateway 常常重開,查了一下 Top 之後發現最大的瓶頸竟然是在 CPU 上,這台 i3-3210M 的使用率達到 91%,而這個老爺爺總共只有 2 core,拿來跑龍蝦真的是對他來說 loading 太大了。

剛好手邊有台前陣子買的 Raspberry 5 4GB 版本,之前是來玩音樂串流的 Moode 系統,但實在是太廢了因此一直在想著把它拿來做別的事情,那不如就改在這台小機器上養養龍蝦吧。整個步驟包含以下過程:

  1. 安裝 Raspberry 5 OS 以及設定
  2. 在 Raspberry 5 上安裝 OpenClaw
  3. 設定 OpenClaw WebUI 的外網穿透

安裝 Raspberry 5 OS 以及設定

這邊有點過於簡單,我是透過官方的 Raspberry Pi Imager 把 OS 安裝在 SD 卡上,基本上透過 UI 介面選擇基礎的 Raspberry OS,後續就按照步驟執行即可。

這個安裝讓我覺得很方便的是,可以在安裝階段就預先輸入好 WiFi 資料,讓我不用開機之後還要先接實體線設定 WiFi。以及把 SSH 連線打開,畢竟這台應該會直接放在客廳電視櫃的某個角落(原本就是想要做音樂串流機…誰想到效能這麼差),因此 SSH 連線是必要且重點。

Imager 官網照片

另外提一點,我的 Raspberry 5 啟用之後,Default 只能抓到我區域網路 Wifi 的 2.4G,查詢了之後應該是因為地區設定,因此沒有 scan 到台灣的一些區網段落網路,因此在你啟用完之後,透過 SSH 進去後可以先透過指令改設定步驟如下:

sudo raspi-config
# 選擇 Localisation Options -> WLAN Country -> 選擇 TW Taiwan。
sudo reboot

然後就是一般的掃 WiFi,這時如果有 UI 會比較方便,但我沒有因此還是走 SSH 指令

nmcli dev wifi rescan
nmcli dev wifi list
# 找到你的 Wifi 之後
sudo nmcli dev wifi connect "mywifi_5G" password "你的密碼"
# 設定優先權(確保以後都連 5G),數字越大優先權越高
nmcli connection show
sudo nmcli connection modify "mywifi_5G" connection.autoconnect-priority 10

在 Raspberry 5 上安裝 OpenClaw

兩個步驟,分別是安裝 Nodejs 以及安裝 OpenClaw

安裝 Nodejs

# 這裡我安裝 nvm + Node 22。
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
# 安裝完後重新載入 shell:
source ~/.bashrc
# 確認版本好
nvm --version
# 用 nvm 安裝 Node 與 pnpm(option)
nvm install 22
npm install -g pnpm
# 確認版本
node -v
npm -v
pnpm -v

安裝 OPENCLAW IN RASPBERRY

在環境全部整理好了,OpenClaw 的安裝我是建議直接去看官網吧,畢竟這個開源現在支援度很高,而且安裝方式有可能未來都會有更輕量、更簡單的方式,所以就請直接去官網使用吧。

OpenClaw Install Doc

現在的安裝模式都很簡單了,以我在 2026.3.14 安裝的版本為例,就只有下一行指令 curl -fsSL https://openclaw.ai/install.sh | bash 就完成了。

設定 OpenClaw 外網穿透

如果你是跟我一樣,透過 SSH 在其他機器安裝的話,應該會對接下來畫面跳出說要去 http:127.0.0.1:18789 連線感到頭疼,畢竟我們就真的不在 local 環境下。

由於我最終終究要透過外網可以開啟 OpenClaw 的 WebUI 進行操作,實現從外部連線,包含從家裡其他電腦 browser 以及外網開啟,試過幾次之後發現兩個主要問題需要解決:

  1. 這個 nodejs 限定 localhost 開啟
  2. 其他 domain 要額外設定權限

由於我的 Home Server 內已經有 Cloudflared Tunnel 服務,因此我實際最想要的一樣是綁定一個 domain 從 Tunnel 進入區網的服務,稍微與 AI 互動研究之後,發現是直接去修改 openclaw.json 檔案中的 Gateway,如以下

"gateway": {
    "port": 18789,
    "mode": "local",
    "bind": "lan",
    "controlUi": {
      "allowedOrigins": [
        "https://openclaw.your.domain"
      ],
      "dangerouslyAllowHostHeaderOriginFallback": true,
      "allowInsecureAuth": true,
      "dangerouslyDisableDeviceAuth": true
    },

最主要調整的是 bind 的參數,以及在 controlUI 加入你的 URL 還有那三個看起來有點恐怖的控制按鈕,接著就可以實現從你的外網 https://openclaw.your.domain 連線。而連線用的 Token 也一樣是在這份 openclaw.json 檔案中,要自己 Copy 出來操作。

完成啦!

打開來的WebUI 登入畫面

最後我總算是可以在 Browser 內用我的指定的 domain 開啟龍蝦,整個過程加上研究大約 1-2 個小時,果然正在風頭上的專案 support 以及解決方案特別好找。

接下來就是對龍蝦、對 AI Agent 的探索了,期許自己能玩出比較不一樣且有趣的應用。