Docker安全係 DevOps 基本功,今日同大家分享一個超實用嘅 Docker 安全掃描技巧:用 Trivy 一鍵掃瞄容器漏洞。無論你係新手定老手,呢篇 step-by-step 教學包你即學即用!做 Docker安全 做好咗,成個 infrastructure 就穩陣好多。
Docker安全掃描係咩嚟?
Docker安全掃描係指檢查容器鏡像(container image)入面有冇已知漏洞嘅過程。每次你 pull 一個 image、build 一個 container,其實都可能有安全風險。Docker安全就係要確保你嘅 containers 唔會俾人利用漏洞入侵。
簡單講:你個 Docker container 用緊一堆 OS packages、library、language runtime,呢啲嘢好多時都有 CVE 漏洞。做 Docker安全掃描就係幫你搵晒出嚟,等你可以 fix 咗先 deploy。
點解 Docker安全咁重要?
根據 2026 年最新資安報告,超過 60% 嘅企業容器環境都有至少一個 Critical 級別漏洞。Docker安全唔係 optional,係 must-have。以下係幾個真實風險:
- 供應鏈攻擊:駭客喺 public image 植入 malware
- 權限提升:container breakout 令 attacker 攞到 host access
- 機密洩漏:hardcoded secrets 喺 image layer 留底
做好 Docker安全掃描,就可以大大減低呢啲風險。
Docker安全必備工具:Trivy
Trivy 係 Aqua Security 開發嘅 open-source vulnerability scanner,專為 Docker安全而設。佢支援 Container image scanning、Filesystem scanning、Git repository scanning、Kubernetes cluster scanning、SBOM generation。最重要係:安裝超簡單!
Docker安全 Step 1:安裝 Trivy
macOS 用家:
brew install trivy
Linux 用家(Ubuntu/Debian):
sudo apt-get install wget apt-transport-https gnupg lsb-release wget -qO - https://aquasecurity.github.io/trivy-repo/deb/public.key | sudo apt-key add - echo deb https://aquasecurity.github.io/trivy-repo/deb $(lsb_release -sc) main | sudo tee -a /etc/apt/sources.list.d/trivy.list sudo apt-get update sudo apt-get install trivy
裝完 verify:
trivy --version # 輸出:Version: 0.55.0
Docker安全 Step 2:第一次掃描
即刻試下掃你個 local Docker image:
# 掃 nginx 官方 image trivy image nginx:latest # 掃特定 image,只 show critical/high trivy image --severity CRITICAL,HIGH nginx:latest
你會見到類似咁嘅 output:
nginx:latest (debian 12.5) Total: 45 (CRITICAL: 2, HIGH: 15, MEDIUM: 20, LOW: 8)
每個漏洞都會 show CVE number、affected package、fixed version。Docker安全掃描嘅第一步就係理解呢啲結果,然後針對 Docker安全 漏洞逐一修補。
Docker安全 Step 3:CI/CD 自動化
你可以將 Docker安全掃描嵌入 CI/CD pipeline:
# .github/workflows/scan.yml
name: Docker Security Scan
on: [push, pull_request]
jobs:
trivy-scan:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Build Docker image
run: docker build -t myapp:latest .
- name: Run Trivy scan
uses: aquasecurity/trivy-action@master
with:
image-ref: myapp:latest
format: sarif
output: trivy-results.sarif
severity: CRITICAL,HIGH
exit-code: 1
咁樣每次 push code,Docker安全檢查就會自動 run。有 critical 漏洞就 fail build!
Docker安全最佳實踐貼士
除咗用 Trivy 掃描,仲有幾招幫你提升 Docker安全:
- 用 minimal base image:Alpine > Ubuntu > Debian。image 越大越易有漏洞
- Fix version 唔好用 latest tag:nginx:1.25.3 好過 nginx:latest
- Run as non-root user:
FROM node:20-alpine RUN addgroup -g 1001 appuser && adduser -u 1001 -G appuser -s /bin/sh -D appuser USER appuser
- Scan regularly:每日行 cron job 掃晒 production images
- Sign your images:用 Docker Content Trust / cosign
Docker安全 FAQ
Q: Trivy vs Docker Scout vs Snyk 點揀?
Trivy 係 open-source + free,適合中小型團隊做 Docker安全掃描。Snyk 同 Docker Scout 有更多 enterprise features 但要俾錢。初學者建議由 Trivy 開始。
Q: Scan 完有漏洞點 fix?
Update base image 或者 rebuild:
docker build --pull --no-cache -t myapp:latest .
Q: Trivy 會唔會好慢?
第一次會 download vulnerability database(約 30 秒),之後每次 scan 幾秒搞掂,好適合 CI/CD 場景。
Docker安全總結
Docker安全係每個 DevOps 工程師嘅基本功。用 Trivy 做 Docker安全掃描 5 分鐘就 set up 好,但效果係長期保護你嘅 infrastructure。記得:每個 image 都 scan、CI/CD pipeline 自動 scan、Critical 漏洞即刻 fix、用 minimal base image。今日開始,將 Docker安全掃描加入你嘅 daily workflow 啦!有問題歡迎留言討論。
📌 延伸閱讀:SSH安全加固實戰教學|Linux伺服器安全加固指南
📎 參考資料:Trivy GitHub|NIST NVD 漏洞資料庫
#Docker #Docker安全 #Trivy #DevSecOps #容器安全 #Cybersecurity



