专属域名
文档搜索
轩辕助手
Run助手
邀请有礼
返回顶部
快速返回页面顶部
收起
收起工具栏
轩辕镜像 官方专业版
轩辕镜像 官方专业版轩辕镜像 官方专业版官方专业版
首页个人中心搜索镜像

交易
充值流量我的订单
工具
提交工单镜像收录一键安装
Npm 源Pip 源Homebrew 源
帮助
常见问题
其他
关于我们网站地图

官方QQ群: 1072982923

knqyf263/trivy Docker 镜像 - 轩辕镜像

trivy
knqyf263/trivy
一款简单且全面的容器漏洞扫描工具
3 收藏0 次下载
😅 镜像要是出问题,背锅的一定是你
中文简介版本下载
😅 镜像要是出问题,背锅的一定是你

Trivy:简单全面的容器漏洞扫描工具

镜像概述和主要用途

Trivy("tri"发音如"trigger","vy"发音如"envy")是一款简单且全面的容器漏洞扫描工具。它能够检测操作系统包(如Alpine、Red Hat Universal Base Image、RHEL、CentOS、Debian、Ubuntu等)和应用依赖(如Bundler、Composer、Pipenv、Poetry、npm、yarn、Cargo等)的漏洞。Trivy易于使用,仅需安装二进制文件即可开始扫描,扫描时只需指定容器镜像名称。

Trivy特别适合在持续集成(CI)流程中使用,可在推送容器镜像至仓库前轻松扫描本地镜像,帮助开发和运维团队在早期发现并修复漏洞。

核心功能和特性

全面的漏洞检测
  • 操作系统包:支持Alpine、Red Hat Universal Base Image、RHEL、CentOS、Debian、Ubuntu等
  • 应用依赖:支持Bundler、Composer、Pipenv、Poetry、npm、yarn、Cargo等
简单易用
  • 仅需指定镜像名称即可完成扫描
  • 无需复杂配置,开箱即用
安装便捷
  • 无需预先安装数据库或额外依赖库
  • 支持多种安装方式(RPM、DEB、Homebrew、二进制包、源码编译等)
高精度检测
  • 尤其对Alpine Linux和RHEL/CentOS系统的漏洞检测准确率高
  • 其他操作系统的检测精度同样出色
适合DevSecOps流程
  • 无缝集成主流CI平台(Travis CI、CircleCI、Jenkins等)
  • 支持多种输出格式和自定义退出码,便于流程控制

使用场景和适用范围

适用场景
  • CI/CD流程集成:在镜像构建完成后、推送至仓库前执行漏洞扫描,阻止漏洞镜像进入部署流程
  • 本地开发环境:开发人员在本地构建镜像后快速检测漏洞,提前修复
  • 容器仓库审计:定期扫描仓库中的镜像,发现潜在安全风险
  • 生产环境检查:对运行中的容器镜像进行漏洞评估
适用人群
  • 开发人员:在开发过程中确保镜像安全性
  • 运维人员:监控和管理容器镜像的安全状态
  • DevSecOps工程师:构建安全的CI/CD流水线

安装方法

RHEL/CentOS
  1. 添加仓库配置至/etc/yum.repos.d/trivy.repo:
    ini
    [trivy]
    name=Trivy repository
    baseurl=[***]
    gpgcheck=0
    enabled=1
    
  2. 安装:
    bash
    sudo yum -y update
    sudo yum -y install trivy
    
    或直接安装RPM包:
    bash
    rpm -ivh [***]
    
Debian/Ubuntu
  1. 替换[CODE_NAME]为系统代号(可通过lsb_release -c获取,如wheezy、jessie、stretch、buster、trusty、xenial、bionic):
    bash
    sudo apt-get install apt-transport-https gnupg
    wget -qO - [***] | sudo apt-key add -
    echo "deb [***] [CODE_NAME] main" | sudo tee -a /etc/apt/sources.list.d/trivy.list
    sudo apt-get update
    sudo apt-get install trivy
    
    或直接安装DEB包:
    bash
    sudo apt-get install rpm
    wget [***]
    sudo dpkg -i trivy_0.0.15_Linux-64bit.deb
    
Arch Linux

通过AUR安装:

bash
pikaur -Sy trivy-bin
# 或
yay -Sy trivy-bin
Mac OS X / Homebrew
bash
brew install knqyf263/trivy/trivy
二进制包(含Windows)

从GitHub Releases下载对应操作系统/架构的归档文件,解压后将二进制文件放入$PATH目录(如Unix系统的/usr/local/bin),并确保具有执行权限。

扫描RHEL/CentOS镜像需安装rpm命令。

源码编译
bash
mkdir -p $GOPATH/src/github.com/knqyf263
cd $GOPATH/src/github.com/knqyf263
git clone [***]
cd trivy/cmd/trivy/
export GO111MODULE=on
go install

快速开始

基本使用

指定镜像名称即可扫描:

bash
trivy python:3.4-alpine
Docker方式运行
扫描远程镜像
bash
docker run --rm -v [本地缓存目录]:/root/.cache/ knqyf263/trivy [镜像名称]

macOS示例:

bash
docker run --rm -v $HOME/Library/Caches:/root/.cache/ knqyf263/trivy python:3.4-alpine
扫描本地镜像

需挂载Docker socket:

bash
docker run --rm -v /var/run/docker.sock:/var/run/docker.sock \
  -v $HOME/Library/Caches:/root/.cache/ knqyf263/trivy python:3.4-alpine

若运行出错,请拉取最新版本镜像:docker pull knqyf263/trivy

使用指南

命令行参数说明
参数说明示例
--severity按严重级别过滤漏洞(逗号分隔,可选:UNKNOWN,LOW,MEDIUM,HIGH,CRITICAL)--severity HIGH,CRITICAL
--format输出格式(table/json)--format json
--output输出结果至文件--output result.json
--exit-code发现漏洞时的退出码(默认0)--exit-code 1
--no-update跳过漏洞数据库更新--no-update
--ignore-unfixed忽略未修复的漏洞--ignore-unfixed
--vuln-type按漏洞类型过滤(os/app)--vuln-type app
--ignore-policy指定忽略漏洞的策略文件--ignore-policy .trivyignore
--clear-cache清除镜像缓存--clear-cache
--reset重置所有缓存和数据库--reset
扫描示例
扫描镜像
bash
trivy knqyf263/test-image:1.2.3
扫描镜像文件
bash
trivy image --input path/to/image.tar
保存结果为JSON格式
bash
trivy --format json --output result.json python:3.4-alpine
按严重级别过滤漏洞

仅显示HIGH和CRITICAL级别漏洞:

bash
trivy --severity HIGH,CRITICAL python:3.4-alpine
按漏洞类型过滤

仅扫描应用依赖漏洞:

bash
trivy --vuln-type app python:3.4-alpine
跳过漏洞数据库更新
bash
trivy --no-update python:3.4-alpine
忽略未修复的漏洞
bash
trivy --ignore-unfixed python:3.4-alpine
指定退出码

发现CRITICAL漏洞时退出码设为2:

bash
trivy --exit-code 2 --severity CRITICAL python:3.4-alpine
忽略指定漏洞

创建.trivyignore文件:

# 忽略CVE-2019-1543
CVE-2019-1543
# 忽略rails-html-sanitizer的所有漏洞
rails-html-sanitizer

执行扫描:

bash
trivy --ignore-policy .trivyignore python:3.4-alpine
清除镜像缓存
bash
trivy --clear-cache
重置所有缓存和数据库
bash
trivy --reset

持续集成(CI)集成

Travis CI

在.travis.yml中添加:

yaml
language: bash
services:
  - docker
before_script:
  - docker pull python:3.4-alpine
  - curl -sfL [***] | sh -s -- -b /usr/local/bin
script:
  - trivy --exit-code 1 --severity HIGH,CRITICAL python:3.4-alpine
CircleCI

在.circleci/config.yml中添加:

yaml
version: 2.1
jobs:
  scan:
    docker:
      - image: circleci/golang:1.14
    steps:
      - checkout
      - run:
          name: Install Trivy
          command: |
            curl -sfL [***] | sh -s -- -b /usr/local/bin
      - run:
          name: Scan image
          command: trivy --exit-code 1 --severity HIGH,CRITICAL python:3.4-alpine
workflows:
  scan_workflow:
    jobs:
      - scan
私有Docker仓库授权

如需扫描私有仓库镜像,需先登录仓库:

bash
# Docker CLI登录
docker login private.registry.com
# 或设置环境变量
export TRIVY_USERNAME=username
export TRIVY_PASSWORD=password
trivy private.registry.com/image:tag

漏洞检测范围

操作系统包

Trivy通过解析操作系统的包管理数据库(如Alpine的apk、Debian的dpkg、RHEL的rpm)检测已安装包的漏洞,并与官方CVE数据库比对。

应用依赖

Trivy扫描应用依赖文件(如Gemfile.lock、package-lock.json、Cargo.lock、composer.lock等),提取依赖版本信息,与对应语言的安全数据库(如RubySec、npm audit、RustSec等)比对,发现应用层漏洞。

常见问题(Q&A)

Homebrew安装问题
  • Q:Homebrew安装后提示"command not found"?
    A:确保Homebrew的bin目录(通常是/usr/local/bin或/opt/homebrew/bin)在$PATH中。
其他问题
  • Q:扫描速度慢?
    A:首次扫描需下载漏洞数据库,后续扫描会使用缓存;可添加--no-update跳过数据库更新(适用于频繁扫描场景)。

  • Q:如何更新Trivy?
    A:根据安装方式选择:RPM/DEB使用包管理器更新,Homebrew执行brew upgrade trivy,二进制包需手动下载新版本。

  • Q:支持Windows系统吗?
    A:支持,可从GitHub Releases下载Windows二进制包。

与其他扫描工具的比较

概述

Trivy相比其他扫描工具(如Clair、Anchore Engine等)具有以下优势:

  • 易用性:无需部署服务,单机二进制即可运行
  • 速度:扫描速度快,适合CI流程集成
  • 全面性:同时支持OS包和应用依赖漏洞检测
  • 轻量级:资源占用低,无需额外数据库
与Clair比较
  • Clair需要部署服务和数据库,Trivy为单机工具
  • Trivy支持更多应用依赖类型的漏洞检测
  • Trivy扫描速度通常更快
与Anchore Engine比较
  • Anchore Engine功能更全面(如策略检查、合规性),但配置复杂
  • Trivy专注于漏洞扫描,简单轻量,更适合快速集成到CI流程
与Quay、Docker Hub、GCR比较
  • 这些平台的内置扫描通常仅支持基础镜像,Trivy可扫描本地构建的镜像
  • Trivy提供更详细的漏洞信息和自定义过滤能力
查看更多 trivy 相关镜像 →
bitnami/trivy logo
bitnami/trivy
Bitnami提供的安全镜像,集成trivy工具,用于扫描容器镜像、文件系统及代码中的安全漏洞。
91M+ pulls
上次更新:未知
alpine/trivy logo
alpine/trivy
用于扫描Docker镜像漏洞和密钥的安全工具。
10K+ pulls
上次更新:未知
aquasec/trivy logo
aquasec/trivy
Trivy是一款一体化云原生安全扫描器
80100M+ pulls
上次更新:未知
giantswarm/trivy logo
giantswarm/trivy
暂无描述
10M+ pulls
上次更新:未知
oowy/trivy logo
oowy/trivy
基于Alpine Linux的Trivy Docker镜像,用于高效扫描容器和应用程序中的安全漏洞,支持amd64/arm64v8架构,提供版本化标签,适合容器安全检测与应用漏洞审计场景。
100K+ pulls
上次更新:未知
toolhippie/trivy logo
toolhippie/trivy
用于Trivy的Docker镜像,提供容器安全扫描功能,可检测容器镜像及文件系统中的漏洞、配置错误等安全问题。
10K+ pulls
上次更新:未知

轩辕镜像配置手册

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式

登录仓库拉取

通过 Docker 登录认证访问私有仓库

Linux

在 Linux 系统配置镜像服务

Windows/Mac

在 Docker Desktop 配置镜像

Docker Compose

Docker Compose 项目配置

K8s Containerd

Kubernetes 集群配置 Containerd

K3s

K3s 轻量级 Kubernetes 镜像加速

Dev Containers

VS Code Dev Containers 配置

MacOS OrbStack

MacOS OrbStack 容器配置

宝塔面板

在宝塔面板一键配置镜像

群晖

Synology 群晖 NAS 配置

飞牛

飞牛 fnOS 系统配置镜像

极空间

极空间 NAS 系统配置服务

爱快路由

爱快 iKuai 路由系统配置

绿联

绿联 NAS 系统配置镜像

威联通

QNAP 威联通 NAS 配置

Podman

Podman 容器引擎配置

Singularity/Apptainer

HPC 科学计算容器配置

其他仓库配置

ghcr、Quay、nvcr 等镜像仓库

专属域名拉取

无需登录使用专属域名

需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单

镜像拉取常见问题

轩辕镜像免费版与专业版有什么区别?

免费版仅支持 Docker Hub 访问,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。

轩辕镜像支持哪些镜像仓库?

专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等;免费版仅支持 docker.io。

流量耗尽错误提示

当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。

410 错误问题

通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。

manifest unknown 错误

先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。

镜像拉取成功后,如何去掉轩辕镜像域名前缀?

使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。

查看全部问题→

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

用户头像

oldzhang

运维工程师

Linux服务器

5

"Docker访问体验非常流畅,大镜像也能快速完成下载。"

轩辕镜像
镜像详情
...
knqyf263/trivy
官方博客Docker 镜像使用技巧与技术博客
热门镜像查看热门 Docker 镜像推荐
一键安装一键安装 Docker 并配置镜像源
咨询镜像拉取问题请 提交工单,官方技术交流群:1072982923
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
咨询镜像拉取问题请提交工单,官方技术交流群:
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
官方邮箱:点击复制邮箱
©2024-2026 源码跳动
官方邮箱:点击复制邮箱Copyright © 2024-2026 杭州源码跳动科技有限公司. All rights reserved.