Repository navigation
containerd 2.1.7
Welcome to the v2.1.7 release of containerd!
The seventh patch release for containerd 2.1 contains various fixes
and updates including a security patch.
Security Updates
- spdystream
Highlights
Container Runtime Interface (CRI)
- Preserve host cgroup mount options for privileged containers (#13119)
- Fix image volumes when using user namespaces in CRI (#12894)
- Fix issue where CNI DEL was never executed after a restart (#12930)
- Hardening: sanitize errors before returning via gRPC to prevent possible credential leaks in pod events (#12803)
- Enable options for pulling encrypted images in CRI (#12713)
Image Distribution
- Fix possible panic from WithMediaTypeKeyPrefix (#13135)
Runtime
- Update runc binary to v1.3.5 (#13060)
- Hardening: fix possible TOCTOU race bug in tar extraction (#12969)
- Fix unintended dropping of mount flags for read-only bind-mounts in user namespaces (#12943)
- Explicitly set AppArmor ABI to 3.0 (#12898)
Please try out the release binaries and report any issues at
https://github.com/containerd/containerd/issues.
Contributors
- yashsingh74
- Samuel Karp
- Maksym Pavlenko
- Phil Estes
- Wei Fu
- Akhil Mohan
- Chris Henzie
- Sebastiaan van Stijn
- Akihiro Suda
- Rodrigo Campos
- user.email
- Aadhar Agarwal
- Alex Chernyakhovsky
- Chris Adeniyi-Jones
- Derek McGowan
- Justin Alvarez
- Michael Zappa
- Ricardo Branco
- Shachar Tal
- Tõnis Tiigi
- ningmingxiao
Changes
67 commits
- Prepare release notes for v2.1.7 (#13223)
3a06b6847Prepare release notes for v2.1.7
- update github.com/moby/spdystream v0.5.1 (#13218)
82910b8c1update github.com/moby/spdystream v0.5.1
- update to Go 1.25.9, 1.26.2 (#13189)
295bdbbffupdate to Go 1.25.9, 1.26.2
- Skip TestExportAndImportMultiLayer on s390x (#13153)
8d0c87494Skip TestExportAndImportMultiLayer on s390x
- Fix possible panic from WithMediaTypeKeyPrefix (#13135)
fe316cc1fremotes: fix possible panic from WithMediaTypeKeyPrefix
- Preserve cgroup mount options for privileged containers (#13119)
- update runc binary to v1.3.5 (#13060)
2f025ff8e[release/2.1] update runc binary to v1.3.5
- Fix vagrant on CI (#13065)
f198b7f87Ignore NOCHANGE error
- Fix TOCTOU race bug in tar extraction (#12969)
aecfb3dc6Fix TOCTOU race bug in tar extraction
- update to go1.25.8, test go1.26.1 (#13013)
- update golangci-lint to v2.1.5 (#13012)
f9528d2d9build(deps): bump golangci/golangci-lint-action from 9.0.0 to 9.2.0de0d60a17build(deps): bump golangci/golangci-lint-action from 8.0.0 to 9.0.01b240d0e0build(deps): bump golangci/golangci-lint-action from 6.5.2 to 8.0.067ec314faci: bump golangci from 6.5.2 to 7.0.07fe19a6b2Disable ST1003: struct field Uid should be UID (staticcheck)88470c519Disable QF1003: could use tagged switch on base (staticcheck)1ea353741fix: Used nolint to ignore the static checksf6ddff11bfix: ST1001: should not use dot imports (staticcheck)4ed50edcefix: ST1019: removed the duplicate imports808c623d1fix: QF1012: Use of fmt.Fprintln(...)e98bc32cdfix: QF1001: could apply De Morgan's law (staticcheck)cebb3583efix: ST1005: error strings should not end with punctuation or newlines1852b5d07fix: QF1004: strings.ReplaceAll instead (staticcheck)9b0b270cdfix: QF1002: could use tagged switch on host (staticcheck)
- cri: Fix image volumes with user namespaces (#12894)
8d5351929cri: Fix image volumes with user namespaces
- ci: modprobe xt_comment on almalinux (#12958)
37a98b239ci: modprobe xt_comment on almalinux
- core/mount: fix getUnprivilegedMountFlags iterating over indices instead of values (#12943)
- Fix CNI issue where CNI DEL is never executed (#12930)
9710aed4afix issue where cni del is never executed
- apparmor: explicitly set abi/3.0 (#12898)
735fcb316apparmor: explicitly set abi/3.0
- integration: Fix TestImageLoad() failure on CI (#12907)
51a63212fintegration: Fix TestImageLoad() failure on CI
- update to go1.24.13, go1.25.7 (#12872)
- fix: sanitize error before gRPC return to prevent credential leak in pod events (#12803)
b65f34e15fix: sanitize error before gRPC return to prevent credential leak in pod events
- build(deps): bump google.golang.org/grpc from 1.72.2 to 1.78.0 (#12750)
2e5ab3f84build(deps): bump google.golang.org/grpc from 1.72.2 to 1.78.0
- cri: emit warning for concurrent CreateContainer (#12743)
5ef24ddd2cri: emit warning for concurrent CreateContainer
- cri: move noisy CDI logs to debug level (#12716)
6acd41e02cri: move noisy CDI logs to debug level
- Uncomment call to add options for pulling encrypted images (#12713)
3477d705dReinstate image decryption
Dependency Changes
- github.com/go-jose/go-jose/v4 v4.0.5 -> v4.1.3
- github.com/moby/spdystream v0.5.0 -> v0.5.1
- github.com/stretchr/testify v1.10.0 -> v1.11.1
- go.opentelemetry.io/auto/sdk v1.1.0 -> v1.2.1
- go.opentelemetry.io/otel v1.35.0 -> v1.38.0
- go.opentelemetry.io/otel/metric v1.35.0 -> v1.38.0
- go.opentelemetry.io/otel/sdk v1.35.0 -> v1.38.0
- go.opentelemetry.io/otel/trace v1.35.0 -> v1.38.0
- golang.org/x/oauth2 v0.27.0 -> v0.32.0
- google.golang.org/genproto/googleapis/api 56aae31c358a -> ab9386a59fda
- google.golang.org/genproto/googleapis/rpc 56aae31c358a -> ab9386a59fda
- google.golang.org/grpc v1.72.2 -> v1.78.0
- google.golang.org/protobuf v1.36.7 -> v1.36.10
Previous release can be found at v2.1.6
Which file should I download?
containerd-<VERSION>-<OS>-<ARCH>.tar.gz: ✅Recommended. Dynamically linked with glibc 2.35 (Ubuntu 22.04).containerd-static-<VERSION>-<OS>-<ARCH>.tar.gz: Statically linked. Expected to be used on Linux distributions that do not use glibc >= 2.35. Not position-independent.
In addition to containerd, typically you will have to install runc
and CNI plugins from their official sites too.
See also the Getting Started documentation.