DirectorySecurity AdvisoriesPricing
Sign In
Directory
prometheus-alertmanager-iamguarded logo

prometheus-alertmanager-iamguarded

Last changed

Request a free trial

Contact our team to test out this image for free. Please also indicate any other images you would like to evaluate.

Request trial
Tags
Overview
Comparison
Provenance
Specifications
SBOM
Vulnerabilities
Advisories

Chainguard Container for prometheus-alertmanager-iamguarded

The Alertmanager handles alerts sent by client applications such as the Prometheus server

Chainguard Containers are regularly-updated, secure-by-default container images.

Download this Container Image

For those with access, this container image is available on cgr.dev:

docker pull cgr.dev/ORGANIZATION/prometheus-alertmanager-iamguarded:latest

Be sure to replace the ORGANIZATION placeholder with the name used for your organization's private repository within the Chainguard Registry.

Overview

Prometheus Alertmanager IAMGuarded is a security-enhanced variant of Alertmanager designed to be deployed using the Prometheus IAMGuarded Helm chart. This image provides additional security benefits over standard Alertmanager deployments and is integrated as part of the complete Prometheus monitoring solution.

Helm Chart Installation

The Alertmanager IAMGuarded image is deployed as part of the Prometheus IAMGuarded Helm chart, delivered exclusively through the same OCI registry as your Chainguard images:

cgr.dev/$ORGANIZATION/iamguarded-charts/prometheus

Basic Installation

Once authenticated (see below) you can install the chart with standard Helm commands and your organization name:

helm install prometheus oci://cgr.dev/$ORGANIZATION/iamguarded-charts/prometheus \
  --set "global.org=$ORGANIZATION"

Important: Replace $ORGANIZATION with your Chainguard organization name. The default organization in the chart values is chainguard-private, which must be changed to match your organization.

Configuration Requirements

Organization Setting

The global.org value is required and can be set either:

  • Via --set flag during installation
  • In your existing values.yaml file

Registry Configuration

For users who mirror images to custom repositories:

  • Use global.imageRegistry to override the default cgr.dev
  • For complex mirroring strategies, consult the chart's values.yaml for individual image configuration options including registry, repository, tag, and digest

Example values.yaml for individual image configuration:

# Main Prometheus server image
server:
  image:
    registry: myregistry.example.com
    repository: mirrored/prometheus-iamguarded
    digest: sha256:... # Use specific digest instead of tag

# Thanos image for long-term storage (when enabled)
server:
  thanos:
    image:
      registry: myregistry.example.com
      repository: mirrored/thanos-iamguarded
      digest: sha256:... # Use specific digest instead of tag

# Alertmanager image for alert management
alertmanager:
  image:
    registry: myregistry.example.com
    repository: mirrored/prometheus-alertmanager-iamguarded
    digest: sha256:... # Use specific digest instead of tag

# OS Shell image for volume permissions
volumePermissions:
  image:
    registry: myregistry.example.com
    repository: mirrored/os-shell-iamguarded
    digest: sha256:... # Use specific digest instead of tag

Authentication

Ensure proper pull credentials are configured through one of the following methods:

Option 1: Using Helm values with global.imagePullSecrets

# values.yaml
global:
  imagePullSecrets:
    - name: chainguard-pull-secret

Option 2: Create a Kubernetes pull secret

# Step 1: Authenticate with chainctl and generate a pull token
chainctl auth login
chainctl auth configure-docker --pull-token --save --ttl=24h

# Step 2: Create the Kubernetes secret
kubectl create secret docker-registry chainguard-pull-secret \
  --docker-server=cgr.dev \
  --docker-username=$(echo cgr.dev | docker-credential-cgr get | jq -r '.Username') \
  --docker-password=$(echo cgr.dev | docker-credential-cgr get | jq -r '.Secret') \
  -n <your-namespace>

# Step 3: Reference the secret in your Helm installation
helm install prometheus oci://cgr.dev/$ORGANIZATION/iamguarded-charts/prometheus \
  --set "global.org=$ORGANIZATION" \
  --set "global.imagePullSecrets[0].name=chainguard-pull-secret"

Option 3: Cluster node-scoped registry permissions (cluster-dependent)

Best Practices

  1. Pin to Digest: While charts follow the same tagging scheme as Chainguard images, always pin to a specific chart digest to prevent unexpected updates:

    helm install prometheus oci://cgr.dev/$ORGANIZATION/iamguarded-charts/prometheus@sha256:DIGEST \
      --set "global.org=$ORGANIZATION"

    The digest can be found in the output of helm pull e.g:

    helm pull oci://cgr.dev/$ORGANIZATION/iamguarded-charts/prometheus
    Pulled: cgr.dev/ORGANIZATION/iamguarded-charts/prometheus:VERSION
    Digest: sha256:6471bd888adc895c4c8d259fd72ae7d165da585208bf5670228319c8c0872a49
  2. Review Default Values: The chart provides security-minded defaults that are sensible but may not be production-ready for all use cases. Review the chart's values.yaml (run helm show values) for the full range of configuration options.

  3. Image Pinning: All IAMGuarded charts pin images to specific digests that have been tested for compatibility, ensuring reliable deployments.

Validation

After deployment, validate your Alertmanager IAMGuarded installation using standard Alertmanager verification methods. The deployment functions as a standard Alertmanager instance, so all typical Alertmanager validation procedures apply.

Prerequisites

Prerequisites are defined in the chart's Chart.yaml and individual templates. No additional requirements beyond standard Kubernetes and Helm functionality are needed.

Security Considerations

The Prometheus IAMGuarded chart (which includes Alertmanager) provides security-minded defaults while acknowledging the cluster-specific nature of both Prometheus, Alertmanager, and Kubernetes environments. Review and adjust settings based on your specific security requirements and cluster configuration.

For detailed configuration options and advanced usage, refer to the chart's values.yaml file.

Kube-Prometheus Helm Chart Usage

This image is also compatible with the Kube-Prometheus IAMGuarded Helm chart, which provides a complete Prometheus monitoring stack including Prometheus server, Alertmanager, Prometheus Operator, Node Exporter, Kube State Metrics, and Blackbox Exporter.

Installation

helm install kube-prometheus oci://cgr.dev/$ORGANIZATION/iamguarded-charts/kube-prometheus \
  --set "global.org=$ORGANIZATION"

Alertmanager Configuration

When using the Kube-Prometheus chart, you can override the Alertmanager image under the alertmanager section in your values.yaml:

alertmanager:
  image:
    registry: cgr.dev
    repository: $ORGANIZATION/prometheus-alertmanager-iamguarded
    digest: sha256:... # Use specific digest for production

Image Override in Complete Kube-Prometheus Configuration

global:
  org: $ORGANIZATION

prometheus:
  image:
    registry: cgr.dev
    repository: $ORGANIZATION/prometheus-iamguarded
    digest: sha256:...

alertmanager:
  image:
    registry: cgr.dev
    repository: $ORGANIZATION/prometheus-alertmanager-iamguarded
    digest: sha256:...

operator:
  image:
    registry: cgr.dev
    repository: $ORGANIZATION/prometheus-operator-iamguarded
    digest: sha256:...

"node-exporter":
  image:
    registry: cgr.dev
    repository: $ORGANIZATION/prometheus-node-exporter-iamguarded
    digest: sha256:...

"kube-state-metrics":
  image:
    registry: cgr.dev
    repository: $ORGANIZATION/kube-state-metrics-iamguarded
    digest: sha256:...

blackboxExporter:
  image:
    registry: cgr.dev
    repository: $ORGANIZATION/prometheus-blackbox-exporter-iamguarded
    digest: sha256:...

Authentication

Ensure proper pull credentials are configured through one of the following methods:

Option 1: Using Helm values with global.imagePullSecrets

# values.yaml
global:
  imagePullSecrets:
    - name: chainguard-pull-secret

Option 2: Create a Kubernetes pull secret

# Step 1: Authenticate with chainctl and generate a pull token
chainctl auth login
chainctl auth configure-docker --pull-token --save --ttl=24h

# Step 2: Create the Kubernetes secret
kubectl create secret docker-registry chainguard-pull-secret \
  --docker-server=cgr.dev \
  --docker-username=$(echo cgr.dev | docker-credential-cgr get | jq -r '.Username') \
  --docker-password=$(echo cgr.dev | docker-credential-cgr get | jq -r '.Secret') \
  -n <your-namespace>

For more details on the complete monitoring stack configuration, refer to the Kube-Prometheus chart's values.yaml file.

What are Chainguard Containers?

Chainguard Containers are minimal container images that are secure by default.

In many cases, the Chainguard Containers tagged as :latest contain only an open-source application and its runtime dependencies. These minimal container images typically do not contain a shell or package manager. Chainguard Containers are built with Wolfi, our Linux undistro designed to produce container images that meet the requirements of a more secure software supply chain.

The main features of Chainguard Containers include:

For cases where you need container images with shells and package managers to build or debug, most Chainguard Containers come paired with a -dev variant.

Although the -dev container image variants have similar security features as their more minimal versions, they feature additional software that is typically not necessary in production environments. We recommend using multi-stage builds to leverage the -dev variants, copying application artifacts into a final minimal container that offers a reduced attack surface that won’t allow package installations or logins.

Learn More

To better understand how to work with Chainguard Containers, please visit Chainguard Academy and Chainguard Courses.

In addition to Containers, Chainguard offers VMs and Libraries. Contact Chainguard to access additional products.

Trademarks

This software listing is packaged by Chainguard. The trademarks set forth in this offering are owned by their respective companies, and use of them does not imply any affiliation, sponsorship, or endorsement by such companies.

Licenses

Chainguard container images contain software packages that are direct or transitive dependencies. The following licenses were found in the "latest" tag of this image:

  • Apache-2.0

  • LGPL-2.1-or-later

  • MIT

  • MPL-2.0

For a complete list of licenses, please refer to this Image's SBOM.

Software license agreement

Compliance

A FIPS validated version of this image is available for FedRAMP compliance. STIG is included with FIPS image.


Related images
prometheus-alertmanager logo
prometheus-alertmanager

Category
application

Safe Source for Open Sourceâ„¢
Media KitContact Us
© 2025 Chainguard. All Rights Reserved.
Private PolicyTerms of Use

Chainguard ContainersChainguard LibrariesChainguard VMs