Skip to main content

Installation

Chainloop is comprised of two main components

  • A Server Side Component (Control Plane + Artifact Storage Proxy) that acts as single source of truth and management console.
  • A Command Line Interface (CLI) used to both a) operate on the control plane and b) run the attestation process on your CI/CD

Command Line Interface (CLI) installation

To install the latest version for macOS, Linux or Windows (using WSL) just choose one of the following installation method.

curl -sfL https://docs.chainloop.dev/install.sh | bash -s

you can retrieve a specific version with

# You can find all the available versions at https://github.com/chainloop-dev/chainloop/releases
curl -sfL https://docs.chainloop.dev/install.sh | bash -s -- --version vx.x.x

and customize the install path (default to /usr/local/bin)

curl -sfL https://docs.chainloop.dev/install.sh | bash -s -- --path /my-path

if cosign is present in your system, in addition to the checksum check, a signature verification will be performed. This behavior can be enforced via the --force-verification flag.

curl -sfL https://docs.chainloop.dev/install.sh | bash -s -- --force-verification

Deploy Chainloop Server components

info

By default, the Chainloop CLI comes pre-configured to talk to Chainloop's platform instance, which is currently on early access. To get an account, please request access here, and we'll get back to you shortly.

Alternatively, you can run your instance of Chainloop through our labs docker-compose setup or in Kubernetes following this guide.

Configure CLI

If you are running your own instance of Chainloop Control Plane. You can make the CLI point to your instance by using the chainloop config save command.

chainloop config save \
--control-plane my-controlplane.acme.com \
--artifact-cas cas.acme.com

Another option would be to build a custom version of CLI with default endpoints' values pointing at your Chainloop instance. Please learn more about this method in the following doc.

Authentication

Authenticate to the Control Plane by running

$ chainloop auth login

Once logged in, your next step would be to create a Chainloop organization. Think of organizations as workspaces or namespaces.

$ chainloop organization create --name my-organization
# INF Organization "my-organization" created!

That's all!

Welcome to Chainloop!