CentOS上使用Docker部署OpenClaw的全過程
其實(shí)現(xiàn)在好多云廠商都出了 OpenClaw 的一鍵鏡像,點(diǎn)幾下就能跑起來。但我手里正好有臺(tái)阿里云的虛擬機(jī)閑著也是閑著,打算在自己服務(wù)器上搭一下。而且我也不想讓 AI 助手一直掛在本地的電腦上,占資源也不安全。至于大模型,我選了阿里云百煉,新用戶還能領(lǐng)幾千萬的免費(fèi)額度,對(duì)我這種自己玩玩的來說,夠用一陣子。
1. 環(huán)境準(zhǔn)備
1.1 安裝Docker和Docker Compose
# 安裝Docker sudo yum install -y docker sudo systemctl start docker sudo systemctl enable docker # 安裝Docker Compose sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose
1.2 配置Docker鏡像加速器(可選,國內(nèi)推薦)
sudo cat > /etc/docker/daemon.json << 'EOF'
{
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker1.3 開放阿里云安全組端口
登錄阿里云控制臺(tái),進(jìn)入ECS實(shí)例的安全組,添加入方向規(guī)則:
- 端口:
28789 //這個(gè)端口默認(rèn)是18789,因?yàn)槲抑安渴疬^,所以換個(gè)新端口 - 協(xié)議:
TCP - 授權(quán)對(duì)象:
0.0.0.0/0(或你的本地IP)
2. 部署OpenClaw
2.1 創(chuàng)建項(xiàng)目目錄
進(jìn)入你習(xí)慣的目錄作為根目錄
mkdir ~/openclaw && cd ~/openclaw
2.2 編寫docker-compose.yml
version: '3.8'
services:
openclaw:
image: ghcr.io/openclaw/openclaw:latest
container_name: openclaw
ports:
- "28789:18789"
volumes:
- ./openclaw-data:/home/node/.openclaw
user: "1000:1000"
restart: unless-stopped2.3 創(chuàng)建配置目錄并設(shè)置權(quán)限
mkdir -p openclaw-data sudo chown -R 1000:1000 openclaw-data
2.4 編寫openclaw.json配置文件
在openclaw-data/目錄下創(chuàng)建openclaw.json:
cat > openclaw-data/openclaw.json << 'EOF'
{
"gateway": {
"bind": "lan",
"port": 18789,
"mode": "local",
"auth": {
"mode": "token",
"token": "your-strong-token-here"
},
"controlUi": {
"allowedOrigins": ["http://你的服務(wù)器公網(wǎng)IP:28789"],
"dangerouslyDisableDeviceAuth": true
}
},
"models": {
"mode": "merge",
"providers": {
"aliyun_bailian": {
"api": "openai-completions",
"baseUrl": "https://dashscope.aliyuncs.com/compatible-mode/v1",
"apiKey": "sk-你的阿里云百煉API-KEY",
"models": [
{ "id": "qwen-max", "name": "通義千問 Max" },
{ "id": "qwen-plus", "name": "通義千問 Plus" }
]
}
}
},
"agents": {
"defaults": {
"model": "aliyun_bailian/qwen-max",
"models": {
"aliyun_bailian/qwen-max": {},
"aliyun_bailian/qwen-plus": {}
}
}
}
}
EOF重要替換:
- 將
your-strong-token-here改為你自己的強(qiáng)密碼。 - 將
你的服務(wù)器公網(wǎng)IP替換為阿里云ECS的公網(wǎng)IP。 - 將
sk-你的阿里云百煉API-KEY替換為你在阿里云百煉控制臺(tái)獲取的真實(shí)API Key。
2.5 啟動(dòng)服務(wù)
docker compose up -d
2.6 查看日志確認(rèn)啟動(dòng)成功
docker logs openclaw --tail 50
出現(xiàn)類似[gateway] ready的日志即表示成功。
3. 訪問與使用
3.1 Web界面訪問
瀏覽器打開:http://你的服務(wù)器公網(wǎng)IP:28789
系統(tǒng)會(huì)提示輸入Token,輸入你在openclaw.json中設(shè)置的token值。
3.2 選擇模型
登錄后,在聊天界面的模型下拉菜單中,選擇aliyun_bailian/qwen-max或aliyun_bailian/qwen-plus,即可開始對(duì)話。
3.3 驗(yàn)證模型調(diào)用
發(fā)送消息,查看結(jié)果。

4. 常見問題解決
4.1 訪問時(shí)提示“origin not allowed”
現(xiàn)象:瀏覽器訪問時(shí)顯示origin not allowed,WebSocket連接被拒絕。
解決方法:
- 確保
openclaw.json中gateway.controlUi.allowedOrigins包含了你的完整訪問地址(例如["http://123.456.789.0:28789"])。 - 同時(shí)設(shè)置
"dangerouslyDisableDeviceAuth": true(測試環(huán)境可用,生產(chǎn)環(huán)境建議配置HTTPS)。 - 修改后重啟容器:
docker compose restart。
4.2 模型調(diào)用失敗,提示“Unknown model”
現(xiàn)象:日志中出現(xiàn)Unknown model: xxx。
解決方法:
- 檢查
openclaw.json中models.providers里的models數(shù)組是否包含了你嘗試調(diào)用的模型ID。 - 檢查
agents.defaults.model和agents.defaults.models中的模型ID是否與providers中的ID完全一致(注意格式為provider_id/model_id)。 - 如果已有舊的agent配置,可刪除
openclaw-data/agents目錄后重啟容器,讓系統(tǒng)重新生成。
5. 更新OpenClaw
docker compose pull docker compose up -d
數(shù)據(jù)會(huì)保留在openclaw-data目錄中,配置不受影響。
通過以上步驟,你可以在阿里云CentOS上成功部署OpenClaw,并接入阿里云百煉模型,通過Web界面進(jìn)行對(duì)話。所有配置均持久化,便于后續(xù)維護(hù)和升級(jí)。
以上就是CentOS上使用Docker部署OpenClaw的全過程的詳細(xì)內(nèi)容,更多關(guān)于CentOS Docker部署OpenClaw的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Vmware虛擬機(jī)配置CentOS 7網(wǎng)絡(luò)實(shí)例
本文介紹了如何解決在CentOS 7系統(tǒng)中配置網(wǎng)絡(luò)接口的問題,首先檢查VMware設(shè)置,確保虛擬機(jī)連接到NAT模式,然后在虛擬機(jī)中配置網(wǎng)絡(luò)接口文件,并禁用NetworkManager以避免沖突,最后重啟network服務(wù)并檢查網(wǎng)絡(luò)狀態(tài)2025-11-11
Linux報(bào)錯(cuò):tar: Error Is Not Recoverable:&n
本文介紹了在Linux系統(tǒng)下解壓`.tar.gz`文件時(shí)遇到的錯(cuò)誤及其解決方法,錯(cuò)誤通常是由于文件下載不完整或參數(shù)設(shè)置錯(cuò)誤引起的,解決方法包括:1. 去掉解壓參數(shù)中的`z`,改為`tar -xvf xx.tar.gz`,適合非gzip過濾歸檔文件;2. 重新下載或上傳文件,確保文件完整性2025-02-02
Linux實(shí)時(shí)信號(hào)處理在通信中的應(yīng)用過程
本文介紹實(shí)時(shí)信號(hào)處理在無線通信中的應(yīng)用,涵蓋采集、處理、傳輸與解調(diào)流程,結(jié)合Linux環(huán)境及FFT、ALSA等工具,適用于5G、物聯(lián)網(wǎng)等場景,提升信號(hào)質(zhì)量與抗干擾能力2025-08-08
Linux程序運(yùn)行找不到動(dòng)態(tài)庫.so文件的解決
這篇文章主要介紹了Linux程序運(yùn)行找不到動(dòng)態(tài)庫.so文件的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-11-11
Ubuntu 14.04下安裝和配置redis數(shù)據(jù)庫
安裝Redis服務(wù)器,會(huì)自動(dòng)地一起安裝Redis命令行客戶端程序。在本機(jī)輸入redis-cli命令就可以啟動(dòng),客戶端程序訪問Redis服務(wù)器。2016-04-04
Apache Omid TSO 組件源碼實(shí)現(xiàn)原理解析
這篇文章主要介紹了Apache Omid TSO 組件源碼實(shí)現(xiàn)原理解析,本文給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧2024-07-07
樹莓派無線上網(wǎng)時(shí)無屏幕下發(fā)現(xiàn)樹莓派IP的方法
今天小編就為大家分享一篇關(guān)于樹莓派無線上網(wǎng)時(shí)無屏幕下發(fā)現(xiàn)樹莓派IP的方法,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2019-04-04
apache documentroot指向htcdoc之外提示403錯(cuò)誤的解決方法
在windows和RH都碰到過,只要把主目錄指到其他地方后就出現(xiàn)權(quán)限不夠的403提示,郁悶了好久。2010-04-04
Apache服務(wù)器IP自動(dòng)跳轉(zhuǎn)域名的問題及解決方案
本教程將詳細(xì)介紹如何通過Apache虛擬主機(jī)配置實(shí)現(xiàn)這一功能,并解決常見問題,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,感興趣的朋友跟隨小編一起看看吧2025-11-11

