Trivy — A tool for scanning vulnerabilities in Docker images, file systems, and IaC.
What it scans: OS packages, dependencies, IaC (Terraform, K8s YAML), secrets.
1# Scanning a Docker image2trivy image nginx:latest3trivy image --severity HIGH,CRITICAL myapp:latest45# Scanning the file system6trivy fs --security-checks vuln,config,secret ./78# Scanning Dockerfile9trivy config Dockerfile1011# SBOM12trivy image --format spdx-json myapp:latest > sbom.json
GitHub Actions:
1- name: Run Trivy vulnerability scanner2 uses: aquasecurity/trivy-action@master3 with:4 image-ref: myapp:latest5 format: sarif6 output: trivy-results.sarif7 severity: CRITICAL,HIGH8 exit-code: 1910- name: Upload Trivy scan results11 uses: github/codeql-action/upload-sarif@v212 with:13 sarif_file: trivy-results.sarif
GitLab CI:
1trivy-scan:2 image: aquasec/trivy:latest3 script:4 - trivy image --exit-code 1 --severity HIGH,CRITICAL $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA
Trivy Operator — automatically scans all images in a K8s cluster and creates VulnerabilityReport.