🍺 BREW Explorer

← all formulae

container-canary

brew install container-canary v0.5.0 Apache-2.0

Test and validate container requirements against versioned manifests

12
30-day installs · #8151
28
90-day · #8806
108
365-day · #8985
302
★ GitHub stars · updated 11mo ago

Build dependencies

go

GitHub topics

automation ci containers docker kubernetes podman utilities versioning

Links

Raw metadata
{
  "aliases": [],
  "alternatives": [],
  "build_dependencies": [
    "go"
  ],
  "categories": [],
  "caveats": null,
  "conflicts_with": [],
  "dependencies": [],
  "deprecated": 0,
  "deprecation_reason": null,
  "desc": "Test and validate container requirements against versioned manifests",
  "disable_reason": null,
  "disabled": 0,
  "enrichment_fetched_at": "2026-06-20T23:36:35+00:00",
  "first_seen": "2026-06-20T23:34:18+00:00",
  "full_name": "container-canary",
  "github_default_branch": "main",
  "github_last_commit_at": "2025-09-02T09:49:53Z",
  "github_readme_excerpt": "# Container Canary\n\n[![Test](https://github.com/NVIDIA/container-canary/actions/workflows/test.yaml/badge.svg)](https://github.com/NVIDIA/container-canary/actions/workflows/test.yaml)\n![GitHub go.mod Go version](https://img.shields.io/github/go-mod/go-version/nvidia/container-canary)\n![GitHub tag (latest SemVer)](https://img.shields.io/github/v/tag/nvidia/container-canary?label=version)\n\nA little bird to validate your container images.\n\n```console\n$ canary validate --file examples/awesome.yaml your/container:latest\nValidating your/container:latest against awesome\n \ud83d\udce6 Required packages are installed                  [passed]\n \ud83e\udd16 Expected services are running                    [passed]\n \ud83c\udf89 Your container is awesome                        [passed]\nvalidation passed\n```\n\nMany modern compute platforms support bring-your-own-container models where the user can provide container images with their custom software environment. However platforms commonly have a set of requirements that the container must conform to, such as using a non-root user, having the home directory in a specific location, having certain packages installed or running web applications on specific ports.\n\nContainer Canary is a tool for recording those requirements as a manifest that can be versioned and then validating containers against that manifest. This is particularly useful in CI environments to avoid regressions in containers.\n\n- [Container Canary](#container-canary)\n  - [Installation](#installation)\n  - [Example (Kubeflow)](#example-kubeflow)\n  - [Validator reference](#validator-reference)\n    - [Metadata](#metadata)\n    - [Runtime options](#runtime-options)\n      - [Environment variables](#environment-variables)\n      - [Ports](#ports)\n      - [Volumes](#volumes)\n      - [Command](#command)\n    - [Checks](#checks)\n      - [Exec](#exec)\n      - [HTTPGet](#httpget)\n      - [TCPSocket](#tcpsocket)\n      - [Delays, timeouts, periods and thresholds](#delays-timeouts-periods-and-thresholds)\n  - [Contribu",
  "github_repo": "NVIDIA/container-canary",
  "github_stars": 302,
  "github_topics": [
    "automation",
    "ci",
    "containers",
    "docker",
    "kubernetes",
    "podman",
    "utilities",
    "versioning"
  ],
  "homepage": "https://github.com/NVIDIA/container-canary",
  "homepage_og_description": null,
  "homepage_og_image": null,
  "homepage_title": null,
  "installs_30d": 12,
  "installs_365d": 108,
  "installs_90d": 28,
  "keg_only": 0,
  "keg_only_reason": null,
  "last_seen": "2026-06-20T23:34:18+00:00",
  "license": "Apache-2.0",
  "llm_generated_at": null,
  "llm_model": null,
  "name": "container-canary",
  "oldnames": [],
  "one_liner": null,
  "optional_dependencies": [],
  "rank_30d": 8151,
  "rank_365d": 8985,
  "rank_90d": 8806,
  "raw_hash": "1ef4ee735a226c8a",
  "recommended_dependencies": [],
  "revision": 0,
  "ruby_source_path": "Formula/c/container-canary.rb",
  "tap": "homebrew/core",
  "test_dependencies": [
    "docker"
  ],
  "uses_from_macos": [],
  "version_head": "HEAD",
  "version_stable": "0.5.0",
  "versioned_formulae": [],
  "why_use_this": null
}