Apidog Docs
🇨🇳 繁體中文
  • 🇺🇸 English
  • 🇯🇵 日本語
  • 🇪🇸 Español
  • 🇰🇷 한국인
  • 🇨🇳 简体中文
  • 🇵🇹 Português (Portugal)
  • 🇮🇩 Bahasa Indonesia
  • 🇧🇷 Português (Brasil)
  • 🇻🇳 Tiếng Việt
  • 🇨🇳 繁體中文
🇨🇳 繁體中文
  • 🇺🇸 English
  • 🇯🇵 日本語
  • 🇪🇸 Español
  • 🇰🇷 한국인
  • 🇨🇳 简体中文
  • 🇵🇹 Português (Portugal)
  • 🇮🇩 Bahasa Indonesia
  • 🇧🇷 Português (Brasil)
  • 🇻🇳 Tiếng Việt
  • 🇨🇳 繁體中文
🇨🇳 繁體中文
  • 🇺🇸 English
  • 🇯🇵 日本語
  • 🇪🇸 Español
  • 🇰🇷 한국인
  • 🇨🇳 简体中文
  • 🇵🇹 Português (Portugal)
  • 🇮🇩 Bahasa Indonesia
  • 🇧🇷 Português (Brasil)
  • 🇻🇳 Tiếng Việt
  • 🇨🇳 繁體中文
HomeLearning Center
Support CenterAPI ReferencesDownloadChangelog
HomeLearning Center
Support CenterAPI ReferencesDownloadChangelog
  1. 團隊資源
  • Apidog 學習中心
  • 開始使用
    • Apidog 簡介
    • Apidog 中的基本概念
    • 導覽 Apidog
    • 快速開始
      • 概覽
      • 建立端點
      • 發送請求
      • 新增斷言
      • 建立測試情境
      • 分享 API 文件
      • 探索更多
    • 遷移到 Apidog
      • 概覽
      • 手動匯入
      • 排程匯入(綁定資料來源)
      • 匯入選項
      • 匯出資料
      • 匯入自
        • 從 Postman 匯入
        • 匯入 OpenAPI 規格
        • 匯入 cURL
        • 匯入 Markdown
        • 從 Insomnia 匯入
        • 從 apiDoc 匯入
        • 匯入 .har 檔案
        • 匯入 WSDL
  • Mock API 資料
    • 概述
    • Smart Mock
    • 自訂模擬
    • 模擬優先順序
    • 模擬腳本
    • 雲端模擬
    • 自託管 Runner 模擬
    • 模擬語言(Locales)
  • 帳號與偏好設定
    • 帳戶設定
    • 產生 OpenAPI 存取權杖
    • 通知
    • 語言設定
    • 快捷鍵
    • 網路代理設定
    • 備份資料
    • 更新 Apidog
    • 刪除帳戶
    • 實驗性功能
  • 傳送請求
    • 概覽
    • SSE 偵錯
    • MCP Client
    • Socket.IO
    • WebSocket
    • Webhook
    • SOAP 或 WebService
    • GraphQL
    • gRPC
    • 使用請求代理代理程式進行偵錯
    • 建立請求
      • 請求歷史記錄
      • 請求基礎
      • 參數與主體
      • 請求標頭
      • 請求設定
      • 偵錯請求
      • 將請求儲存為端點
      • HTTP/2
    • 驗證與授權
      • 概覽
      • CA 和用戶端憑證
      • 授權類型
      • Digest Auth
      • OAuth 1.0
      • OAuth 2.0
      • Hawk 驗證
      • Kerberos
      • NTLM
      • Akamai EdgeGrid
    • 回應和 Cookie
      • 檢視 API 回應
      • 管理 Cookie
      • 概覽
  • 開發和偵錯 API
    • 概觀
    • 產生請求
    • 傳送請求
    • 偵錯案例
    • 測試案例
    • 動態值
    • 驗證回應
    • Design-First 與 Request-First
    • 產生程式碼
    • 環境與變數
      • 概述
      • 使用變數
      • 環境管理
    • Vault 密鑰
      • 概覽
      • HashiCorp Vault
      • Azure Key Vault
      • AWS Secrets Manager
    • 動態值模組
      • Airline
      • 動物
      • 顏色
      • Commerce
      • Company
      • 資料庫
      • Datatype
      • 日期
      • Finance
      • Food
      • Git
      • Hacker
      • Helpers
      • 圖片
      • Internet
      • 位置
      • Lorem
      • 音樂
      • Number
      • Person
      • Phone
      • 科學
      • 字串
      • System
      • Vehicle
      • Word
    • 前置和後置處理器
      • 概覽
      • 斷言
      • 擷取變數
      • Wait
      • 安全性
      • 資料庫操作
        • 概述
        • MySQL
        • MongoDB
        • Redis
        • Oracle Client
      • 使用腳本
        • 概觀
        • 前置處理器指令碼
        • 後置處理器腳本
        • 公開腳本
        • Postman Scripts Reference
        • 呼叫其他程式語言
        • 使用 JS Libraries
        • 視覺化回應
        • 腳本範例
          • 斷言腳本
          • 使用變數
          • 修改請求
          • 其他範例
    • API 偵錯
      • AI Agent Debugger
      • A2A Debugger
  • 設計 API
    • 概覽
    • 建立新的 API 專案
    • 端點基礎
    • APl 設計指南
    • 模組
    • 設定多個請求主體範例
    • 元件
    • 通用欄位
    • 全域參數
    • 端點變更歷史
    • 留言
    • 批次端點管理
    • 自訂協定 API
    • Spec-first 模式 (Beta)
    • 安全方案
      • 概觀
      • 建立安全性方案
      • 使用 Security Scheme
      • 線上文件中的安全性方案
    • 進階功能
      • 自訂端點欄位
      • 關聯的測試場景
      • 端點狀態
      • 參數列表的外觀
      • 端點唯一識別
    • Schemas
      • 概述
      • 建立新 Schema
      • 建立 Schema
      • 從 JSON 等產生 Schema
      • oneOf, allOf, anyOf
      • 使用 Discriminator
  • API 測試
    • 概述
    • 測試情境
      • 建立測試情境
      • 在請求之間傳遞資料
      • 流程控制條件
      • 從端點和端點案例同步資料
      • 從其他專案匯入端點和端點案例
      • 匯出測試情境
    • 測試報告
      • 測試報告
    • 執行測試情境
      • 執行測試場景
      • 批次執行測試場景
      • 資料驅動測試
      • 共享測試資料
      • 排程任務
      • 管理來自其他專案的 API 執行環境
    • 測試套件
      • 概述
      • 建立測試套件
      • 編排測試套件
      • 在本機執行測試套件
      • 透過 CLI 執行測試套件
      • 排程任務
    • 測試 API
      • 整合測試
      • 效能測試
      • 端對端測試
      • 迴歸測試
      • 契約測試
    • Apidog CLI
      • 概覽
      • 安裝並執行 Apidog CLI
      • Apidog CLI 選項
    • CI/CD
      • 概述
      • 與 Github Actions 整合
      • Integrate with Gitlab
      • 與 Jenkins 整合
      • 透過 Git Commit 觸發測試
  • 發布 API 文件
    • 概述
    • 支援的 API 技術
    • 快速分享
    • 檢視 API 文件
    • Markdown 文件
    • 發佈文件網站
    • 自訂登入頁面
    • 自訂版面配置
    • 自訂 CSS、JavaScript、HTML
    • 自訂網域
    • AI Features
    • SEO 設定
    • 進階設定
      • 文件搜尋
      • CORS Proxy
      • 整合 Google Analytics
      • 資料夾樹設定
      • 可見性設定
      • 在文件 URL 中嵌入值
    • API 版本
      • 概述
      • 建立 API 版本
      • 發佈 API 版本
      • 使用 API 版本分享端點
  • 分支
    • 概觀
    • 建立 Sprint 分支
    • 在分支中測試 API
    • 在分支中設計 API
    • 合併 Sprint 分支
    • 管理 Sprint 分支
    • AI Branch (Beta)
  • AI 功能
    • 概觀
    • 啟用 AI 功能
    • 產生測試案例
    • 使用 AI 修改 Schema
    • 端點合規性檢查
    • API 文件完整性檢查
    • AI 驅動的欄位命名
    • 常見問題
  • Apidog MCP 伺服器
    • 概覽
    • 將 Apidog 專案連接至 AI
    • 將已發布的文件連接至 AI
    • 將 OpenAPI 檔案連接到 AI
  • Apidog Europe
    • Apidog Europe
  • 最佳實務
    • 處理 API 簽章
    • 存取受 OAuth 2.0 保護的 API
    • 協作工作流程
    • 管理驗證狀態
  • 離線空間
    • 概述
  • 管理
    • 管理專案
      • 管理專案
      • 通知設定
      • 管理專案成員
      • 專案資源
        • 資料庫連線
        • Git 連線
    • 管理團隊
      • 管理團隊
      • 管理團隊成員
      • 團隊活動
      • 團隊角色與權限
      • 團隊資源
        • General Runner
        • 團隊變數
        • 請求代理代理程式
      • 即時協作
        • 團隊協作
    • 入門檢查清單
      • 基本概念
      • 入門指南
    • 管理組織
      • 管理組織
      • 組織角色與權限
      • 方案管理
        • 組織中的帳單管理員
      • 單一登入 (SSO)
        • SSO 概覽
        • 設定 Microsoft Entra ID
        • 設定 Okta
        • 為組織設定 SSO
        • 管理使用者帳戶
        • 將群組對應到團隊
      • SCIM 佈建
        • SCIM 佈建簡介
        • Microsoft Entra ID
        • Okta
      • 組織資源
        • 自託管 Runner
  • 帳單
    • 概觀
    • 點數
    • 升級您的方案
    • 替代付款方式
    • 管理訂閱
    • 將付費團隊移至組織
  • 附加元件
    • API Hub
    • Apidog Intellij IDEA 外掛
    • 瀏覽器擴充功能
      • Chrome
      • Microsoft Edge
    • 請求代理
      • Web 中的請求代理
      • 共用文件中的請求代理
      • 用戶端中的請求代理
  • 資料與安全
    • 資料儲存與安全性
    • 使用者資料隱私與安全
    • 請求路由與資料安全
  • 參考
    • API 設計優先方法
    • Apidog OpenAPI 規格擴充
    • JSONPath
    • XPath
    • 正規表示式
    • JSON Schema
    • CSV 檔案格式
    • 安裝 Java 環境
    • Runner 部署環境
    • Apidog Markdown 語法
    • Apidog Swagger 擴充
      • 概述
      • x-apidog-folder
      • x-apidog-status
      • x-apidog-name
      • x-apidog-maintainer
    • Apidog JSON Schema 擴充
      • 概述
      • x-apidog-mock
      • x-apidog-orders
      • x-apidog-enum
  • 支援中心
  1. 團隊資源

General Runner

Apidog Self-hosted Runner 可以理解為一個可託管在獨立伺服器上的自動化程式。它可以執行 Apidog 中的任務,例如排程自動化測試、排程 API 文件匯入,以及返回模擬回應結果。

準備#

主機(伺服器或本機 PC)必須已安裝 Docker。
最低要求的 Docker 版本為 20.10.0,建議使用版本 20.10.13。

快速開始#

本節將引導你如何在伺服器上部署 General Runner。

1. 部署 General Runner#

前往 Apidog Home 頁面,選擇你想要的團隊,然後點擊右側的 Resources。接著點擊 Deploy General Runner 開始。
team-resources-general-runner.png

2. 取得 Runner 部署命令#

點擊 Deploy General Runner 後,從彈出視窗中複製 General Runner 的部署命令。你可以根據需要自訂命令,支援自訂伺服器 OS、公開連接埠、掛載資料目錄等。以下是這些設定的詳細說明:
Server OS:指定 Docker 容器的作業系統。這包含 Linux、macOS 和 Windows。選擇正確的作業系統對於確保 Docker 容器正常運作至關重要。
Docker Image:提供三個版本:General、Slim 和 Custom。如果你的「自訂腳本」需要呼叫外部程式,請根據所需環境選擇適合安裝的映像檔:
General:包含 Runner 的所有功能,並預先安裝以下語言環境:Node.js 18、Java 21、Python 3 和 PHP 8。
Slim:包含 Runner 的所有功能,但僅預先安裝 Node.js 18。
Custom:包含 Runner 的所有功能,並支援外部程式的自訂語言環境。你可以建立自己的 Dockerfile,依需求新增或移除環境。
Exposed Port:預設情況下,Docker 容器不會將內部連接埠公開供外部存取。使用 -p 參數,你可以將容器內部連接埠對應到主機上的連接埠,允許外部存取容器提供的服務。例如,-p 80:4524 會將容器的內部連接埠 4524 對應到主機的連接埠 80。
Mount Data Directory:-v 參數允許你將主機上的目錄掛載到容器中,讓容器能夠存取並操作主機上的檔案(例如資料庫設定或外部程式)。例如,-v "/opt/runner":/opt/runner 會將主機的 /opt/runner 目錄掛載到容器的 /opt/runner 目錄。
image.png
TIP
部署命令包含 token 資訊,基於資料安全原因只會顯示一次。每次點擊 Deploy General Runner 都會產生新的命令。
請將命令儲存在本機,因為你可以將其用於未來的 Runner 升級。

3. 在伺服器上部署 Runner#

將複製的部署命令貼到伺服器的終端機中,Runner 安裝將自動開始。
TIP
你可以透過環境變數修改 Runner 的部署屬性,以更符合你的實際使用情境。閱讀 runner deployment environment 以取得更多資訊。
安裝完成後,終端機會列印相關資訊。如果發生錯誤,你可以根據錯誤詳細資訊進行疑難排解。如果仍無法解決,請聯絡我們並提供回饋。

4. 在伺服器上檢視 Runner 狀態#

你可以透過 Docker 用戶端檢視容器的執行狀態。
你也可以在終端機中使用 docker ps 命令來檢視容器的執行狀態。

5. 在 Apidog 檢視已部署的 General Runner#

確認伺服器上的 Runner 容器已部署並啟用後,返回 Apidog。你可以在 Team Resources → General Runner 中看到 Runner 已部署並連接到 Apidog。
如果 General Runner 已成功部署在伺服器上,但未顯示於 Apidog 用戶端中,請點擊「General Runner」右側的重新整理按鈕來重新整理頁面並再次檢查。
你可以重新命名、新增描述並刪除 Runner,讓你的團隊成員能更好地使用此 Runner;你也可以停止/重新啟動 Runner。
已暫停的 Runner 將不再執行指定的排程任務,也無法建立新的相關任務並指定此 Runner 執行。
請參考下表了解 Runner 的狀態說明:
狀態說明
已啟動Runner 在伺服器上的容器中正常啟用,與 Apidog 保持通訊,並可處理 Apidog 發出的相關任務。
已停止Runner 在 Apidog 中被手動停止,但仍在伺服器上的容器中正常執行並保持通訊。它不會處理 Apidog 發出的任務,且新任務無法指定已停止的 Runner 來執行。你可以在 Apidog 手動啟用它,將 Runner 恢復為已啟動狀態。
離線Runner 已與 Apidog 中斷連線,無法處理任務。這可能是因為伺服器上的 Runner 容器停止,或伺服器與 Apidog 之間發生通訊問題。若要恢復 Runner,請確保 Runner 容器正在執行,且與 Apidog 的通訊沒有問題,使 Runner 能恢復為已啟動狀態。
你可以在一個團隊內部署多個 General Runner。建立需要自託管 Runner 的任務時,團隊成員可以從可用的 Runner 中選擇。

在 Runner 中儲存檔案#

使用 Runner 執行端點請求、測試情境和排程任務等任務時,可能需要特定本機檔案來支援任務執行。範例包括:
在自訂腳本中呼叫其他程式語言
在 Pre/Post Processors 中使用資料庫連線
傳送請求時使用 SSL 憑證
為了支援此需求,請將必要檔案儲存在 Docker 容器內的指定目錄中。當 Runner 執行相關任務時,會依據任務需求從指定目錄讀取檔案內容,以確保成功完成。
請參考下表,將具有適當格式與內容的檔案放入指定目錄以供使用:
使用內容指定目錄路徑(或檔案名稱)Docker 命令範例
其他程式語言/app/external-programs/-v /Users/xxx/runner/packages/api-test/external-programs:/app/externalPrograms
資料庫連線設定檔/app/database/database-connections.json-v /Users/xxx/runner/packages/api-test/database/database-connections.json:/app/database/database-connections.json
SSL 憑證清單檔/app/ssl/ssl-client-cert-list.json-v /Users/xxx/runner/packages/api-test/ssl/ssl-client-cert-list.json:/app/ssl/ssl-client-cert-list.json
你可以參考此頁面了解如何從 Apidog 用戶端匯出設定檔。

升級與重新部署 Runner#

升級 Runner#

當 Runner 發佈新版本時,桌面 Runner UI 中會出現升級圖示。點擊該圖示以安裝 Apidog 提供的最新版本。
runner-user-interface.png
點擊 Upgrade 會提示你停止目前正在執行的 Runner 容器。請注意,一旦容器停止,排程任務以及用戶端傳送到此 Runner 的任何任務都將不再執行。
update-prompt.png
確認升級後,Apidog 會自動停止目前的 Runner 容器,並提供部署新版本的命令。依照初始部署步驟重新部署 Runner。部署成功後,你將使用最新版本。注意:用戶端中現有的排程任務不會受到影響,也不需要重新指派。
update-general-runner.png

重新部署 Runner#

如果 Runner 遇到問題,而你在 Q&A 區段找不到解決方案,或說明無法提供幫助,請考慮重新部署 Runner。若要執行此操作,請前往特定 Runner 的 More Actions 區段並點擊 Redeploy。
redeploy-the-runner.png
重新部署流程與上述升級相同。注意:重新部署也會停止 Runner 容器。

Q&A#

1. 如何檢查 Runner 記錄以診斷問題?
使用 docker ps 命令找出有問題的 Runner。
使用以下命令檢視記錄:
我的 Runner 已關閉/中斷連線或無法執行任務。我該怎麼辦?
步驟 1:收集資訊以診斷問題:
尋找錯誤模式或操作詳細資訊
開啟開發者工具(Alt+7+8),將測試情境傳送到有問題的 Runner,並記錄端點詳細資訊
檢查 Runner 記錄,尋找任何錯誤訊息或線索
步驟 2:解決問題:
如果你能識別問題且它不是由 Apidog 錯誤造成,請自行修復
如果你無法找出問題,請聯絡 Apidog 社群以取得進一步協助
為什麼 Runner 完成排程任務後我沒有收到通知?
步驟 1:確認任務完成:
檢查 Apidog 用戶端中是否有排程任務的測試報告
檢查 Runner 記錄是否有任何問題
步驟 2:檢查通知設定:
確保通知設定已儲存在排程任務中
再次確認條件和收件者是否設定正確
嘗試手動觸發任務,以確認通知是否正常傳送
'No Runner Privilege' 錯誤是什麼意思,如何修復?
此錯誤有兩個可能原因:
部署命令已重新產生:如果你產生命令、關閉彈出視窗,然後再次點擊,新的 token 可能會使先前的 token 失效。若要修復此問題:
切換到左上角的另一個團隊,然後返回需要部署 Runner 的團隊
重新產生部署命令、複製並執行。請確保在流程完成前不要再次點擊重新產生。
teamId 變數的 ID 資料錯誤:這是一個已在最新版本中修復的已知錯誤。如果問題仍然存在:
切換到左上角的另一個團隊,然後返回需要部署 Runner 的團隊
重新產生部署命令、複製並執行。請確保在流程完成前不要再次點擊重新產生。
Modified at 2026-06-11 10:26:02
Previous
團隊角色與權限
Next
團隊變數
Built with