Dockerfile 語法靜態檢查器

Dockerfile Linter:以固定行規則檢查 FROM、image tag、USER、連續 RUN、特定 apt-get install、COPY 與 ADD;不解析 Dockerfile AST,也不建置 image。

工具載入中...

關於 dockerfile 語法靜態檢查器

Dockerfile 語法靜態檢查器Dockerfile Linter:以固定行規則檢查 FROM、image tag、USER、連續 RUN、特定 apt-get install、COPY 與 ADD;不解析 Dockerfile AST,也不建置 image。

此工具的運作方式

開發與數據工具在本地記憶體中執行詞法標記化與 AST 樹狀轉換,嚴格遵循 RFC 8259、YAML 1.2、RFC 4180 CSV 及 POSIX 規範。詞法掃描器在解析數值時完整保留超過 2^53-1 的 64 位元大整數,避免資料庫 ID 與時間戳精度被四捨五入截斷。

執行管線與計算架構

  1. 本地記憶體緩衝區的輸入資料接收與語彙正規化清洗處理。
  2. 語法結構有效性驗證與領域不變量及極值邊界安全檢查。
  3. 確定性演算法核心轉換與高精度數學模型運算求值執行。
  4. 驗證結果序列化輸出、完整性校驗與即時診斷資訊標記生成。

實際範例與應用方式

實際應用場景: 檢查 pinned image 與非 root USER。

範例輸入:

FROM node:20 USER app

演算法運算處理: 以有限 advisory heuristic 掃描每一行。

示例輸出:

No basic Dockerfile issues detected.

限制與特殊情況

這是逐行建議檢查器。它尋找 FROM,警告未標 tag 或 latest image、缺少或 root USER、連續 RUN、未含 --no-install-recommends 的 apt-get install,以及少於兩個空白分隔參數的 COPY/ADD。它不解析續行、多階段、JSON 形式、變數、BuildKit、shell 命令、image manifest、OCI 政策、漏洞,也不判定能否建置。

瀏覽器處理與隱私範圍

工具功能的設計是在瀏覽器中處理輸入,不會刻意將輸入傳送至 CZOA 工具處理伺服器。網站資源、流量分析或廣告可能另有網路請求。瀏覽器、擴充功能及裝置管理軟體不在此範圍內。

客戶端執行與驗證方法學

本工具的有效負載處理設計為在瀏覽器內透過 JavaScript 或 Web Worker 於本機執行。網站資源、流量分析或廣告可能另有網路請求。機密性、可重複性與延遲取決於瀏覽器環境,並非絕對保證。

遵循標準與技術規範

  • Standard Browser Web API / Algorithm Implementation (No single external RFC/ISO standard)

內容負責單位:CZOA Tools · 最後複核:2026-09-15 · 複核方法

使用方式

  1. 在工作區輸入資料或選擇支援的檔案。
  2. 檢查控制項並選擇可用的參數、單位、格式或範圍。
  3. 按下操作按鈕,或查看即時更新的計算結果。
  4. 確認診斷訊息與結果後,再複製或匯出。

常見問題

此 Dockerfile linter 檢查什麼?+

它是行導向的 advisory checker:尋找 `FROM`,檢查無 tag 或 `:latest` image、缺少或 root `USER`、連續 `RUN`、特定 `apt-get install` 與參數不足的 `COPY`、`ADD`。

最小的 pinned 非 root Dockerfile 會輸出什麼?+

夾具使用 `FROM node:20` 與 `USER app`,回傳 `No basic Dockerfile issues detected.`。這只代表此 checker 的 pattern 沒有命中,不能證明 image 安全或能建置。

哪些 Dockerfile syntax 沒有被解析?+

這是逐行建議檢查器。它尋找 FROM,警告未標 tag 或 latest image、缺少或 root USER、連續 RUN、未含 --no-install-recommends 的 apt-get install,以及少於兩個空白分隔參數的 COPY/ADD。它不解析續行、多階段、JSON 形式、變數、BuildKit、shell 命令、image manifest、OCI 政策、漏洞,也不判定能否建置。

它會建置或上傳 Dockerfile 嗎?+

不會。它只在瀏覽器路徑檢查輸入文字。隔離夾具沒有記錄提交 Dockerfile 載荷;不會執行 Docker、拉 image 或檢視 daemon。