系統管理員與開發者只需數分鐘,即可透過 Docker 與 Docker Compose 在企業內部網絡或本機伺服器中自建 AgentGPT 執行個體。將應用部署於受控的私有虛擬網絡(VPC)中,團隊能將智能體的任務目標、推理中間歷程、提示詞紀錄與資料庫持久化數據完整保存在內網邊界內,有效規避將敏感業務脈絡洩漏給公有雲多租戶 SaaS 平台的資訊安全風險。
本文詳細說明 AgentGPT 的核心架構、環境前置條件、自動化與手動容器化部署流程、生產級內網安全強化實踐,以及長期維運的架構評估。
系統架構與運作原理
AgentGPT 透過模組化的多容器架構驅動自主遞迴智能體:
- 前端服務(
frontend):基於 Next.js 13、TypeScript、Tailwind CSS 與 HeadlessUI 構建的 Web 介面,於容器內運作並對映至連接埠3000。使用者透過瀏覽器建立智能體、設定頂層目標、即時監看子任務的動態產生與執行進度,並匯出工作產出。 - 後端引擎(
platform):基於 Python FastAPI 的核心編排服務,對外開放連接埠8000。該模組依託 LangChain 實現任務拆解、優先順序佇列調度、反思循環與外部工具呼叫。 - 資料持久層:前端透過 Prisma ORM、後端透過 SQLModel 存取 MySQL 資料庫,安全保存智能體設定、使用者工作階段及詳細任務執行紀錄。
- 外部模型與工具通訊:核心控制平面與狀態資料庫保留於本地 Docker 宿主機,智能體透過對外 HTTPS 請求呼叫外部大語言模型介面(如 OpenAI API),或選用 Serper 搜尋引擎與 Replicate 圖像生成服務。
部署前置條件
在目標主機上確認具備以下環境:
- Docker 與 Docker Compose:已安裝並啟動 Docker Engine 20.10+ 或 Docker Desktop,且支援 Compose v2 命令。
- Git:用於複製官方原始碼儲存庫。
- Node.js 18+:若使用專案內建的互動式 CLI 安裝引導指令碼,宿主機需具備此環境。
- API 金鑰憑據:
- 有效的 OpenAI API 金鑰,且具備充足的模型額度(支援 GPT-4 或 GPT-3.5-turbo)。
- (選填) Serper API 金鑰,用於支援智能體自主聯網檢索。
- (選填) Replicate API 權杖,用於生成圖像素材。
方案一:使用自動化引導指令碼快速部署
AgentGPT 儲存庫內建了互動式導引腳本,能一鍵完成環境變數配置、相依套件安裝與 Docker 映像檔建置。
1. 複製程式碼儲存庫
git clone https://github.com/reworkd/AgentGPT.git
cd AgentGPT
2. 執行配置指令碼
依據作業系統執行對應檔案:
- Linux / macOS:
./setup.sh - Windows(PowerShell 或 CMD):
setup.bat
3. 完成互動式問答
引導腳本將提示輸入:
- 核心的 OpenAI API 金鑰;
- 選填的 Serper 與 Replicate 憑證;
- 連接埠對映與資料庫偏好設定。
腳本完成後會自動觸發 Docker 映像檔建置。完成後於瀏覽器開啟 http://localhost:3000,即可進入私有化控制台。
方案二:手動透過 Docker Compose 部署與維運
在標準 Linux 伺服器、CI/CD 流程或無法執行互動指令碼的環境中,建議採用標準 Docker Compose 流程。
1. 複製專案並檢視編排檔案
git clone https://github.com/reworkd/AgentGPT.git
cd AgentGPT
專案根目錄包含 docker-compose.yml,其中定義了 frontend(對應 ./next/Dockerfile)與 platform(對應 ./platform 的 prod 建置階段)兩組核心服務。
2. 設定環境變數
將環境變數範本複製至前端運行時所需路徑:
cp .env.example ./next/.env
使用文字編輯器編輯 ./next/.env,填入必要參數:
# 限制單一任務最大遞迴循環次數,防止過度消耗 Token
NEXT_PUBLIC_MAX_LOOPS="50"
REWORKD_PLATFORM_MAX_LOOPS="50"
# 內部網路存取端點
NODE_ENV="production"
NEXT_PUBLIC_BACKEND_URL="http://localhost:8000"
# 工作階段與身份驗證安全密鑰
NEXTAUTH_SECRET="請生成長度不少於32位的隨機安全字串"
NEXTAUTH_URL="http://localhost:3000"
# 外部模型與工具金鑰
OPENAI_API_KEY="sk-your-openai-api-key"
SERPER_API_KEY="your-optional-serper-api-key"
3. 建置並於背景啟動容器
執行明確的映像檔建置並於背景啟動執行個體:
docker compose up --build -d
4. 驗證服務狀態與日誌
確認容器運作狀態:
docker compose ps
即時查看服務輸出日誌:
docker compose logs -f
於瀏覽器輸入 http://localhost:3000 即可在私有環境中啟動首個智能體任務。
生產內網環境的安全強化規範
預設的 Docker Compose 設定主要針對本機開發,若部署於企業內部共用主機,系統管理員應落實以下安全防護:
1. 限制宿主機連接埠暴露範圍
預設設定會將容器的 3000 與 8000 連接埠發布至所有網路介面(0.0.0.0),可能導致內網其他未授權端點直接存取。建議於 docker-compose.yml 中將連接埠綁定限制為本地回環位址(127.0.0.1):
services:
frontend:
ports:
- "127.0.0.1:3000:3000"
platform:
ports:
- "127.0.0.1:8000:8000"
2. 建立反向代理與 TLS 加密
於前端架設 Nginx、Traefik 或 Caddy 反向代理,配置 SSL/TLS 憑證並整合企業 SSO(如 OAuth / LDAP)。Nginx 基礎設定範例如下:
server {
listen 443 ssl http2;
server_name agent.internal.example.com;
ssl_certificate /etc/ssl/certs/internal.crt;
ssl_certificate_key /etc/ssl/private/internal.key;
location / {
proxy_pass http://127.0.0.1:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
}
}
3. 嚴格控管遞迴循環上限
當目標描述過於寬鬆或模糊時,自主智能體容易陷入重複分解子任務的無限循環。務必於環境變數中明確設定 NEXT_PUBLIC_MAX_LOOPS 與 REWORKD_PLATFORM_MAX_LOOPS(建議設定在 20 至 50 之間),確保 API 預算在受控範圍內。
4. 明確劃分資料安全邊界
自建 AgentGPT 能確保系統邏輯、任務執行軌跡、智能體設定與歷史資料庫完全停留在內部基礎設施中。然而,傳送給大語言模型求解的具體提示詞仍會透過網際網路發送至外部供應商(例如 OpenAI)。若涉及高度機密業務,建議透過內網資料防外洩代理進行過濾,或改為介接企業自建的 Azure OpenAI 私有網路端點。
專案生命週期與維運架構考量
在將 AgentGPT 納入企業長期自動化技術架構之前,管理人員應瞭解其維護現狀:
- 儲存庫歸檔現況:隨著官方團隊策略調整,
reworkd/AgentGPT開源專案已於 2026 年初正式進入歸檔(Archived)唯讀狀態。其現有程式碼對於獨立概念驗證(PoC)、內部自動化流程測試依然具備實用價值,但上游不再提供安全更新或套件修補。 - 相依套件版本鎖定:從原始碼建置 Docker 映像檔時,建議明確鎖定底層映像檔版本與 npm/Python 套件版本,避免外部套件更新導致建置失敗。
- 現代架構演進:若業務需求高度仰賴持續的外部工具擴充、多智能體協同辯論或精細的人工介入審核機制(Human-in-the-loop),建議評估並比較 CrewAI、AutoGen 或 LangGraph 等目前持續活躍維護的智能體編排框架。