Skip to content

Latest commit

 

History

History
202 lines (140 loc) · 6.04 KB

installation.md

File metadata and controls

202 lines (140 loc) · 6.04 KB

Installing Trivy

In this section you will find an aggregation of the different ways to install Trivy. Installation options are labeled as either "Official" or "Community". Official installations are developed by the Trivy team and supported by it. Community installations could be developed by anyone from the Trivy community, and collected here for your convenience. For support or questions about community installations, please contact the original developers.

!!! note If you are looking to integrate Trivy into another system, such as CI/CD, IDE, Kubernetes, etc, please see Ecosystem section to explore integrations of Trivy with other tools.

Container image (Official)

Use one of the official Trivy images:

Registry Repository Link
Docker Hub docker.io/aquasec/trivy https://hub.docker.com/r/aquasec/trivy
GitHub Container Registry (GHCR) ghcr.io/aquasecurity/trivy https://github.com/orgs/aquasecurity/packages/container/package/trivy
AWS Elastic Container Registry (ECR) public.ecr.aws/aquasecurity/trivy https://gallery.ecr.aws/aquasecurity/trivy

!!! Tip It is advisable to mount a persistent cache dir on the host into the Trivy container.

!!! Tip For scanning container images with Trivy, mount the container engine socket from the host into the Trivy container.

Example:

docker run -v /var/run/docker.sock:/var/run/docker.sock -v $HOME/Library/Caches:/root/.cache/ aquasec/trivy:{{ git.tag[1:] }} image python:3.4-alpine

GitHub Release (Official)

  1. Download the file for your operating system/architecture from [GitHub Release assets](https://github.com/aquasecurity/trivy/releases/tag/{{ git.tag }}).
  2. Unpack the downloaded archive (tar -xzf ./trivy.tar.gz).
  3. Make sure the binary has execution bit turned on (chmod +x ./trivy).

Install Script (Official)

For convenience, you can use the install script to download and install Trivy from GitHub Release.

curl -sfL https://raw.githubusercontent.com/aquasecurity/trivy/main/contrib/install.sh | sudo sh -s -- -b /usr/local/bin {{ git.tag }}

RHEL/CentOS (Official)

=== "Repository" Add repository setting to /etc/yum.repos.d.

``` bash
cat << EOF | sudo tee -a /etc/yum.repos.d/trivy.repo
[trivy]
name=Trivy repository
baseurl=https://aquasecurity.github.io/trivy-repo/rpm/releases/\$basearch/
gpgcheck=1
enabled=1
gpgkey=https://aquasecurity.github.io/trivy-repo/rpm/public.key
EOF
sudo yum -y update
sudo yum -y install trivy
```

=== "RPM"

``` bash
rpm -ivh https://github.com/aquasecurity/trivy/releases/download/{{ git.tag }}/trivy_{{ git.tag[1:] }}_Linux-64bit.rpm
```

Debian/Ubuntu (Official)

=== "Repository" Add repository setting to /etc/apt/sources.list.d.

``` bash
sudo apt-get install wget gnupg
wget -qO - https://aquasecurity.github.io/trivy-repo/deb/public.key | gpg --dearmor | sudo tee /usr/share/keyrings/trivy.gpg > /dev/null
echo "deb [signed-by=/usr/share/keyrings/trivy.gpg] https://aquasecurity.github.io/trivy-repo/deb generic main" | sudo tee -a /etc/apt/sources.list.d/trivy.list
sudo apt-get update
sudo apt-get install trivy
```

=== "DEB"

``` bash
wget https://github.com/aquasecurity/trivy/releases/download/{{ git.tag }}/trivy_{{ git.tag[1:] }}_Linux-64bit.deb
sudo dpkg -i trivy_{{ git.tag[1:] }}_Linux-64bit.deb
```

Homebrew (Official)

Homebrew for macOS and Linux.

brew install trivy

Windows (Official)

  1. Download trivy_x.xx.x_windows-64bit.zip file from releases page.
  2. Unzip file and copy to any folder.

Arch Linux (Community)

Arch Linux Package Repository.

sudo pacman -S trivy

References:

MacPorts (Community)

MacPorts for macOS.

sudo port install trivy

References:

Nix/NixOS (Community)

Nix package manager for Linux and macOS.

=== "Command line" nix-env --install -A nixpkgs.trivy

=== "Configuration" nix # your other config ... environment.systemPackages = with pkgs; [ # your other packages ... trivy ];

=== "Home Manager" nix # your other config ... home.packages = with pkgs; [ # your other packages ... trivy ];

References:

FreeBSD (Official)

Pkg package manager for FreeBSD.

pkg install trivy

asdf/mise (Community)

asdf and mise are quite similar tools you can use to install trivy. See their respective documentation for more information of how to install them and use them:

The plugin used by both tools is developped here

=== "asdf" A basic global installation is shown below, for specific version or/and local version to a directory see "asdf" documentation.

```shell
# Install plugin
asdf plugin add trivy https://github.com/zufardhiyaulhaq/asdf-trivy.git

# Install latest version
asdf install trivy latest

# Set a version globally (on your ~/.tool-versions file)
asdf global trivy latest

# Now trivy commands are available
trivy --version
```

=== "mise" A basic global installation is shown below, for specific version or/and local version to a directory see "mise" documentation.

``` shell
# Install plugin and install latest version
mise install trivy@latest

# Set a version globally (on your ~/.tool-versions file)
mise use -g trivy@latest

# Now trivy commands are available
trivy --version
```