Ubuntu Compatibility
Differences between Chainguard Containers and Ubuntu third-party images
Product Docs
Open Source
Compliance
Education
This document provides an overview of network requirements for using Chainguard Containers. To use Chainguard tools and Containers in environments with firewalls, VPNs, and IDS/IPS systems, you will need to add some rules to allow traffic into and out of your networks.
Chainguard Containers do not call Chainguard services while running, so no network changes would be required to the runtime environment. Review the Notes column for more info on each Hostname.
This table lists the DNS hostnames, associated ports, and protocols that will need to be allowed through firewalls and proxies to use Chainguard Containers:
Hostname | Port | Protocol | Notes |
---|---|---|---|
cgr.dev | 443 | HTTPS | Main container image registry |
console.chainguard.dev | 443 | HTTPS | Chainguard dashboard |
data.chainguard.dev | 443 | HTTPS | Console API endpoint |
console-api.enforce.dev | 443 | HTTPS | Registry API endpoint |
enforce.dev | 443 | HTTPS | Registry authentication |
dl.enforce.dev | 443 | HTTPS | chainctl downloads |
issuer.enforce.dev | 443 | HTTPS | Registry STS (Security Token Service) |
apk.cgr.dev | 443 | HTTPS | Package repository |
virtualapk.cgr.dev | 443 | HTTPS | Package repository |
packages.cgr.dev | 443 | HTTPS | Package repository (Extra packages) |
packages.wolfi.dev | 443 | HTTPS | Package repository (Starter containers) |
If you experience networking issues while trying to use Chainguard Containers, please ensure that your firewall allows traffic to and from these hosts, and that it doesn’t have any rules to block
.dev
domains.
This table lists the third-party DNS hostnames, associated ports, and protocols that will need to be allowed through firewalls and proxies to use Chainguard Containers:
Hostname | Port | Protocol | Notes |
---|---|---|---|
9236a389bd48b984df91adc1bc924620.r2.cloudflarestorage.com | 443 | HTTPS | Blob storage for *.cgr.dev |
support.chainguard.dev | 443 | HTTPS | Support access for customers |
Note that the
9236a389bd48b984df91adc1bc924620.r2.cloudflarestorage.com
host is used to serve both image data and packages via*.cgr.dev
.
Connections to the hosts listed on this page are generally initiated as new outbound connections. If you are using stateful firewall rules, then you will need to add symmetric rules to ensure that traffic flows correctly.
You will need egress rules that allow new traffic to the hosts listed here. You will need corresponding ingress rules that allow related and established traffic.
Many of the hosts listed on this page use multiple DNS A records or CNAME aliases. Additionally, many A records have a short time to live of 60 seconds, and the majority are less than an hour (3600s).
If your network filters traffic based on IP addresses, ensure that any firewalls update their rules at an appropriate interval to match the TTL for each DNS record.
For guaranteed connectivity, the following TLS requirements must be at minimum supported by clients and servers communicating with Chainguard Containers and endpoints:
The requirements can be approximately tested with the following OpenSSL client command:
openssl s_client -cipher @SECLEVEL=2:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384 -ciphersuites TLS_AES_256_GCM_SHA384 -groups P-256 -connect HOST:PORT
Note that in the case of TLSv1.2 connectivity you must check the output for
Extended master secret: yes
.
Differences between Chainguard Containers and Ubuntu third-party images
Differences between Chainguard Containers and Red Hat UBI third-party images
Differences between Chainguard Containers and Alpine third-party images
Differences between Chainguard Containers and Debian third-party images
Last updated: 2025-06-17 15:22