Releases · containerd/containerd · GitHub
Skip to content

Releases: containerd/containerd

containerd 2.4.2

Choose a tag to compare

@github-actions github-actions released this 13 Oct 22:35
v2.4.2
b7a2526

Welcome to the v2.4.2 release of containerd!

The second patch release for containerd 2.4 contains various fixes
and updates including security patches.

Security Updates

Highlights

Container Runtime Interface (CRI)

  • Apply hardening to not follow symlinks for container log files (#14302)

Image Distribution

  • Fix excessive memory usage during image pulls when registry downloads outpace content writes (#14342)
  • Apply hardening to reject image references with ".." path components (#14282)

Runtime

  • Apply hardening to allowlist socket domains in the default seccomp profile (#14247)

Please try out the release binaries and report any issues at
https://github.com/containerd/containerd/issues.

Contributors

  • Samuel Karp
  • Maksym Pavlenko
  • Sebastiaan van Stijn
  • Derek McGowan
  • LEI WANG
  • Paweł Gronowski
  • Phil Estes
  • Wei Fu
  • syed abdul khaliq

Changes

25 commits

  • 4b342aeaf Prepare release notes for v2.4.2
  • Update to go1.26.9 / go1.27.2 (security) (#14350)
  • ci: update to golangci-lint v2.14.0 (go1.27.2 compatibility) (#14347)
    • 3fb9faa68 ci: update to golangci-lint v2.14.0 (go1.27.2 compatibility)
    • 187caba38 Merge commit from fork
    • 44fd201a8 remotes/docker: bound parallel fetch readers
    • fc7adbfab Merge commit from fork
    • a2eb01f66 images: skip malformed digests when computing referrer labels
    • 39cff482d Merge commit from fork
    • 7f0c0b822 content, remotes: bound reads to expected size
  • remotes/docker: throttle worker chunk buffers (#14342)
    • 6a78f854a remotes/docker: limit chunk buffers per layer
  • cri: should not follow log file (#14302)
  • reference: reject .. path components that rewrite the host (#14282)
    • 6b631559b reference: reject .. path components that rewrite the host
  • seccomp: Use an allow-list for socket domains (#14247)
    • 7936ee578 seccomp: Use an allow-list for socket domains
  • update runc binary to v1.5.2 (#14241)
  • Conditional actions (#14237)
    • 6e3b0d040 Makefile: remove go mod download from integration
    • 694cfb371 ci: skip linters steps in private repositories
    • ca0452717 workflows: skip non-CI jobs in private forks

Dependency Changes

This release has no dependency changes

Previous release can be found at v2.4.1

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.

containerd 2.3.7

Choose a tag to compare

@github-actions github-actions released this 13 Oct 22:46
v2.3.7
6f589cf

Welcome to the v2.3.7 release of containerd!

The seventh patch release for containerd 2.3 contains various fixes
and updates including security patches.

Security Updates

Highlights

Container Runtime Interface (CRI)

  • Apply hardening to not follow symlinks for container log files (#14301)

Image Distribution

  • Apply hardening to reject image references with ".." path components (#14281)

Runtime

  • Apply hardening to allowlist socket domains in the default seccomp profile (#14248)

Snapshotters

  • Apply hardening to filter ID-mapping labels from image annotations during unpack (#14261)

Please try out the release binaries and report any issues at
https://github.com/containerd/containerd/issues.

Contributors

  • Samuel Karp
  • Wei Fu
  • Maksym Pavlenko
  • Aysha Afrah Ziya
  • Derek McGowan
  • Sebastiaan van Stijn
  • Akihiro Suda
  • LEI WANG
  • Paweł Gronowski
  • Phil Estes
  • Vishal Srinivasan
  • syed abdul khaliq
  • 申玥

Changes

31 commits

  • Prepare release notes for v2.3.7 (#14339)
  • Update to go1.26.9 (#14353)
    • 320278f96 Update to go1.26.9
    • ca3d94d2f Merge commit from fork
    • 9621a5f9c remotes/docker: bound parallel fetch readers
    • dff0d82dd Merge commit from fork
    • 2181d7baa images: skip malformed digests when computing referrer labels
    • 29ed4ba2e Merge commit from fork
    • 80885a94d content, remotes: bound reads to expected size
    • 5c6687786 Merge commit from fork
    • 2e17e62e2 cri: unmount checkpoint view on every CRImportCheckpoint return path
  • integration/client: fix TestContainerExecLargeOutputWithTTY (#14306)
    • da23fb7af integration/client: fix TestContainerExecLargeOutputWithTTY
  • cri: should not follow log file (#14301)
  • reference: reject .. path components that rewrite the host (#14281)
    • b3dd30ae5 reference: reject .. path components that rewrite the host
  • vendor: google.golang.org/grpc v1.83.2 (#14263)
    • 993898bbf [release/2.3] vendor: google.golang.org/grpc v1.83.2
  • core/unpack: don't honor id-mapping labels from image annotations (#14261)
    • fe408f2a4 core/unpack: tighten comments around id-mapping label filtering
    • 3ab5f9c0e core/unpack: don't honor id-mapping labels from image annotations
  • seccomp: Use an allow-list for socket domains (#14248)
    • 658428e2f seccomp: Use an allow-list for socket domains
  • Conditional actions (#14244)
    • c73186ea6 Makefile: remove go mod download from integration
    • 030b7b3f7 ci: skip linters steps in private repositories
    • ec6240e3e workflows: skip non-CI jobs in private forks
  • update runc binary to v1.5.2 (#14240)

Dependency Changes

  • go.opentelemetry.io/otel v1.43.0 -> v1.44.0
  • go.opentelemetry.io/otel/metric v1.43.0 -> v1.44.0
  • go.opentelemetry.io/otel/sdk v1.43.0 -> v1.44.0
  • go.opentelemetry.io/otel/trace v1.43.0 -> v1.44.0
  • golang.org/x/crypto v0.53.0 -> v0.55.0
  • golang.org/x/mod v0.36.0 -> v0.38.0
  • golang.org/x/net v0.55.0 -> v0.58.0
  • golang.org/x/oauth2 v0.35.0 -> v0.36.0
  • golang.org/x/sync v0.21.0 -> v0.22.0
  • golang.org/x/sys v0.46.0 -> v0.47.0
  • golang.org/x/term v0.44.0 -> v0.45.0
  • golang.org/x/text v0.38.0 -> v0.41.0
  • google.golang.org/genproto/googleapis/api 9d38bb4040a9 -> 3dc84a4a5aaa
  • google.golang.org/genproto/googleapis/rpc 6f92a3bedf2d -> 3dc84a4a5aaa
  • google.golang.org/grpc v1.80.0 -> v1.83.2

Previous release can be found at v2.3.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.

containerd 2.2.10

Choose a tag to compare

@github-actions github-actions released this 13 Oct 22:45
v2.2.10
991ca6a

Welcome to the v2.2.10 release of containerd!

The tenth patch release for containerd 2.2 contains various fixes
and updates including security patches.

Security Updates

Highlights

Container Runtime Interface (CRI)

  • Apply hardening to not follow symlinks for container log files (#14300)

Image Distribution

  • Avoid hang and data corruption during multipart image fetch (#14316)
  • Apply hardening to reject image references with ".." path components (#14280)

Runtime

  • Apply hardening to allowlist socket domains in the default seccomp profile (#14249)

Snapshotters

  • Apply hardening to filter ID-mapping labels from image annotations during unpack (#14269)

Please try out the release binaries and report any issues at
https://github.com/containerd/containerd/issues.

Contributors

  • Samuel Karp
  • Maksym Pavlenko
  • Wei Fu
  • Aysha Afrah Ziya
  • Phil Estes
  • Adrien Delorme
  • LEI WANG
  • Paweł Gronowski
  • Sebastiaan van Stijn
  • Shiming Zhang
  • syed abdul khaliq
  • 申玥

Changes

33 commits

  • Prepare release notes for v2.2.10 (#14340)
    • 27d59fe59 Prepare release notes for v2.2.10
  • Update to go1.26.9 (#14354)
    • cb4648a80 Update to go1.26.9, remove go1.25.12
    • 6fe70e5cc Merge commit from fork
    • 70c8ae49e remotes/docker: bound parallel fetch readers
    • aff52a508 Merge commit from fork
    • 2455fec2f images: skip malformed digests when computing referrer labels
    • 32fc74497 Merge commit from fork
    • 5f8c507a2 content, remotes: bound reads to expected size
    • 14da554b2 Merge commit from fork
    • c3b7534ed cri: unmount checkpoint view on every CRImportCheckpoint return path
  • Skip critest OOMKilled testcase for systemd cgroup (#14319)
    • a47da7e9b script/critest.sh: always skip OOMKilled on systemd cgroup
    • 32c566557 *: skip critest OOMKilled testcase for systemd cgroup
  • multipart fetch stability fixes (#14316)
  • integration/client: fix TestContainerExecLargeOutputWithTTY (#14307)
    • 7dff2d997 integration/client: fix TestContainerExecLargeOutputWithTTY
  • cri: should not follow log file (#14300)
  • reference: reject .. path components that rewrite the host (#14280)
    • 4f71fd9b0 reference: reject .. path components that rewrite the host
  • core/unpack: don't honor id-mapping labels from image annotations (#14269)
    • 4b3494a8d core/unpack: tighten comments around id-mapping label filtering
    • 076598878 core/unpack: don't honor id-mapping labels from image annotations
  • seccomp: Use an allow-list for socket domains (#14249)
    • 5ba51c0f2 seccomp: Use an allow-list for socket domains
  • Conditional actions (#14246)
    • fa5e5452e [CI] Prevents triggering of an inactive issue/PR check for forked repository.
    • 1c0d72890 Makefile: remove go mod download from integration
    • 9cfd2b4f8 ci: skip linters steps in private repositories
    • 8c0ab89ce workflows: skip non-CI jobs in private forks

Dependency Changes

This release has no dependency changes

Previous release can be found at v2.2.9

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.

containerd 2.0.14

Choose a tag to compare

@github-actions github-actions released this 13 Oct 22:26
v2.0.14
9681afd

Welcome to the v2.0.14 release of containerd!

The fourteenth patch release for containerd 2.0 contains various fixes
and updates including a security patch.

Security Updates

Highlights

Container Runtime Interface (CRI)

  • Apply hardening to not follow symlinks for container log files (#14299)

Runtime

  • Apply hardening to allowlist socket domains in the default seccomp profile (#14251)

Snapshotters

  • Apply hardening to filter ID-mapping labels from image annotations during unpack (#14270)

Please try out the release binaries and report any issues at
https://github.com/containerd/containerd/issues.

Contributors

  • Samuel Karp
  • Wei Fu
  • Maksym Pavlenko
  • Aysha Afrah Ziya
  • Paweł Gronowski
  • Phil Estes
  • Shiming Zhang
  • ningmingxiao

Changes

21 commits

  • 30145a48d Prepare release notes for v2.0.14
  • eaae6434c Merge commit from fork
  • 21fd0a996 content, remotes: bound reads to expected size
  • Skip critest OOMKilled testcase for systemd cgroup (#14320)
    • eb878c296 script/critest.sh: always skip OOMKilled on systemd cgroup
    • 95be879a5 *: skip critest OOMKilled testcase for systemd cgroup
  • integration/client: fix TestContainerExecLargeOutputWithTTY (#14308)
    • 9101dc4e3 integration/client: fix TestContainerExecLargeOutputWithTTY
    • 16e119c17 ci:fix ci TestContainerExecLargeOutputWithTTY panic
  • cri: should not follow log file (#14299)
  • core/unpack: don't honor id-mapping labels from image annotations (#14270)
    • 1e0b4964e core/unpack: tighten comments around id-mapping label filtering
    • 6e9229820 core/unpack: don't honor id-mapping labels from image annotations
  • seccomp: Use an allow-list for socket domains (#14251)
    • 1183551f1 seccomp: Use an allow-list for socket domains
  • Conditional actions (#14250)
    • 29ab0dcca [CI] Prevents triggering of an inactive issue/PR check for forked repository.
    • 23c28d68c Makefile: remove go mod download from integration
    • 4b3976166 ci: skip linters steps in private repositories
    • db335dfa0 workflows: skip non-CI jobs in private forks

Dependency Changes

This release has no dependency changes

Previous release can be found at v2.0.13

Which file should I download?

  • containerd-<VERSION>-<OS>-<ARCH>.tar.gz: ✅Recommended. Dynamically linked with glibc 2.31 (Ubuntu 20.04).
  • containerd-static-<VERSION>-<OS>-<ARCH>.tar.gz: Statically linked. Expected to be used on non-glibc Linux distributions. 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.

containerd 2.4.1

Choose a tag to compare

@github-actions github-actions released this 24 Sep 23:40
v2.4.1
f255103

Welcome to the v2.4.1 release of containerd!

The first patch release for containerd 2.4 contains various fixes
and updates including a security patch.

Security Updates

Highlights

Container Runtime Interface (CRI)

  • Fix bug where failed container start cleanup leaked tasks and prevented container removal (#14223)
  • Fix bug where container creation failed when SELinux relabeling was unsupported by the filesystem (#14212)

Image Distribution

  • Fix content upload failures when retrying fetch content after reaching EOF (#14197)

Snapshotters

  • Apply hardening to filter ID-mapping labels from image annotations during unpack (#14200)

ctr development tool

  • Fix bug where arguments following "-" were dropped in "ctr images export" (#14219)
  • Fix bug where container command arguments were parsed as flags in "ctr run", "ctr containers create", "ctr tasks exec", and "containerd oci-hook" (#14215)
  • Fix bug where comma-separated flag values were incorrectly split in ctr subcommands (#14188)

Please try out the release binaries and report any issues at
https://github.com/containerd/containerd/issues.

Contributors

  • Samuel Karp
  • Aysha Afrah Ziya
  • Chris Henzie
  • CrazyMax
  • Maksym Pavlenko
  • Nan Liu
  • Sebastiaan van Stijn

Changes

23 commits

  • 9f7f70fc31 Prepare release notes for v2.4.1
  • 98e88f2afe Merge commit from fork
  • e0c8eed120 Bound Walk references
  • ddf544326a Bound Dispatch concurrency and references
  • cri: don't leak task when StartContainer cleanup fails to delete task (#14223)
    • 9e8abe0405 cri: fix process leak when start cleanup fails to delete task
  • ctr: preserve args after "-" in images export (#14219)
    • acbdd57f0d ctr: preserve args after "-" in images export
  • ctr: fix flag parsing issues in run, containers create, tasks exec, and oci-hook (#14215)
    • a2e9a5196e cmd/containerd: stop flag parsing on oci-hook
    • 2d0e53474d ctr: stop flag parsing before container command
  • cri: tolerate wrapped ENOTSUP during relabel (#14212)
    • eb2dfa125d cri: tolerate wrapped ENOTSUP during relabel
  • core/unpack: don't honor id-mapping labels from image annotations (#14200)
    • 429f317b55 core/unpack: tighten comments around id-mapping label filtering
    • cc1b8a2dc5 core/unpack: don't honor id-mapping labels from image annotations
  • remotes: revert closing fetch readers at EOF (#14197)
    • d265baec5a remotes: test fetch retries and HTTP reader lifetime
    • 9e8507bea8 Revert "remotes: close fetch reader immediately on EOF"
  • ctr: disable slice flag separator on commands (#14188)
    • 2543d23905 ctr: disable slice flag separator on commands
  • vendor: github.com/fxamacker/cbor/v2 v2.9.4 (#14179)
    • f00dd7552e vendor: github.com/fxamacker/cbor/v2 v2.9.4

Dependency Changes

  • github.com/fxamacker/cbor/v2 v2.9.1 -> v2.9.4

Previous release can be found at v2.4.0

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.

containerd 2.3.6

Choose a tag to compare

@github-actions github-actions released this 24 Sep 23:13
v2.3.6
ee27353

Welcome to the v2.3.6 release of containerd!

The sixth patch release for containerd 2.3 contains various fixes
and updates including a security patch.

Security Updates

Highlights

Container Runtime Interface (CRI)

  • Fix bug where container creation failed when SELinux relabeling was unsupported by the filesystem (#14211)
  • Enable mount manager for image mounts in CRI (#14147)

Image Storage

  • Ensure all layers are fetched when multiple manifests in an index share a config descriptor (#14139)

Runtime

  • Avoid unexpected mutation of mount options in mount helpers (#14192)
  • Mask /proc/interrupts and CPU thermal throttle sysfs paths in Linux containers by default (#14144)

Please try out the release binaries and report any issues at
https://github.com/containerd/containerd/issues.

Contributors

  • Paweł Gronowski
  • Samuel Karp
  • Chris Henzie
  • Maksym Pavlenko
  • Wei Fu
  • Gao Xiang
  • Nan Liu

Changes

26 commits

  • 086fc0d40e Prepare release notes for v2.3.6
  • 3e3b3daabc Merge commit from fork
  • 03fbef37da Bound Walk references
  • bfe167214b Bound Dispatch concurrency and references
  • Fix input mutation in mount option helpers (#14192)
    • 5f17a29a9b core/mount: Keep lazy copy for filtered options
    • 49796574fb core/mount: Return copied filtered mount options
    • cb3f358aea mount: share lazy option filtering
    • ee7ae5b7c7 mount: fix shallow copy of Options in RemoveVolatileOption and RemoveIDMapOption
    • 1facedfb21 mount: fix input mutation in readonlyMounts
    • 5ca695a441 mount: replace copyMounts with slices.Clone
  • cri: tolerate wrapped ENOTSUP during relabel (#14211)
    • 7fd198f858 cri: tolerate wrapped ENOTSUP during relabel
  • release: don't mark 2.3 releases as latest (#14180)
    • 147edce99f release: don't mark 2.3 releases as latest
  • cri: Backport image mount fixes 2.3 (#14147)
    • c2c5164437 cri: only unmount image volumes when mounting fails
    • 74d0c79682 cri: enable mount manager for image mounts
  • core/unpack: fetch layers of every config-sharing manifest (#14139)
    • 4a3a41d353 core/unpack: fetch layers of every config-sharing manifest
  • pkg/oci: mask thermal interrupt info (#14144)
  • Update to go1.26.8 (#14088)

Dependency Changes

This release has no dependency changes

Previous release can be found at v2.3.5

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.

containerd 2.2.9

Choose a tag to compare

@github-actions github-actions released this 24 Sep 23:16
v2.2.9
86634a5

Welcome to the v2.2.9 release of containerd!

The ninth patch release for containerd 2.2 contains various fixes
and updates including a security patch.

Security Updates

Highlights

Container Runtime Interface (CRI)

  • Fix bug where container creation failed when SELinux relabeling was unsupported by the filesystem (#14210)
  • Enable mount manager for image mounts in CRI (#14148)

Image Storage

  • Ensure all layers are fetched when multiple manifests in an index share a config descriptor (#14140)

Runtime

  • Mask /proc/interrupts and CPU thermal throttle sysfs paths in Linux containers by default (#14182)

Please try out the release binaries and report any issues at
https://github.com/containerd/containerd/issues.

Contributors

  • Samuel Karp
  • Chris Henzie
  • Maksym Pavlenko
  • Wei Fu
  • Gao Xiang
  • Nan Liu

Changes

13 commits

  • 60acf78bc5 Prepare release notes for v2.2.9
  • 253f9cc140 Merge commit from fork
  • 053c0cc412 Bound Walk references
  • efd11fc9c2 Bound Dispatch concurrency and references
  • cri: tolerate wrapped ENOTSUP during relabel (#14210)
    • 39d0dd4b43 cri: tolerate wrapped ENOTSUP during relabel
  • pkg/oci: mask thermal interrupt info (#14182)
  • core/unpack: fetch layers of every config-sharing manifest (#14140)
    • 9e1ae6a9e9 core/unpack: fetch layers of every config-sharing manifest
  • cri: Backport image mount fixes 2.2 (#14148)
    • 2cdf8d80cc cri: only unmount image volumes when mounting fails
    • 2e1dcc5da0 cri: enable mount manager for image mounts

Dependency Changes

This release has no dependency changes

Previous release can be found at v2.2.8

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.

containerd 2.0.13

Choose a tag to compare

@github-actions github-actions released this 24 Sep 23:04
v2.0.13
9a16faa

Welcome to the v2.0.13 release of containerd!

The thirteenth patch release for containerd 2.0 contains various fixes
and updates including a security patch.

Security Updates

Highlights

Image Storage

  • Ensure all layers are fetched when multiple manifests in an index share a config descriptor (#14141)

Runtime

  • Mask /proc/interrupts and CPU thermal throttle sysfs paths in Linux containers by default (#14183)

Please try out the release binaries and report any issues at
https://github.com/containerd/containerd/issues.

Contributors

  • Samuel Karp
  • Chris Henzie
  • Maksym Pavlenko

Changes

8 commits

  • 87c035016f Prepare release notes for v2.0.13
  • 9bb64e7024 Merge commit from fork
  • 2dbcee240e Bound Walk references
  • a2e7a37e0c Bound Dispatch concurrency and references
  • pkg/oci: mask thermal interrupt info (#14183)
  • core/unpack: fetch layers of every config-sharing manifest (#14141)
    • 6850f41724 core/unpack: fetch layers of every config-sharing manifest

Dependency Changes

This release has no dependency changes

Previous release can be found at v2.0.12

Which file should I download?

  • containerd-<VERSION>-<OS>-<ARCH>.tar.gz: ✅Recommended. Dynamically linked with glibc 2.31 (Ubuntu 20.04).
  • containerd-static-<VERSION>-<OS>-<ARCH>.tar.gz: Statically linked. Expected to be used on non-glibc Linux distributions. 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.

containerd 1.7.36

Choose a tag to compare

@github-actions github-actions released this 24 Sep 23:43
v1.7.36
2892c20

Welcome to the v1.7.36 release of containerd!

The thirty-sixth patch release for containerd 1.7 contains various fixes
and updates including a security patch.

Security Updates

Highlights

Image Storage

  • Ensure all layers are fetched when multiple manifests in an index share a config descriptor (#14142)

Runtime

  • Mask /proc/interrupts and CPU thermal throttle sysfs paths in Linux containers by default (#14184)

Please try out the release binaries and report any issues at
https://github.com/containerd/containerd/issues.

Contributors

  • Samuel Karp
  • Chris Henzie
  • Derek McGowan

Changes

9 commits

  • b0ab39c205 Prepare release notes for v1.7.36
  • 670a5de22f Merge commit from fork
  • a3a39e5873 Bound Walk references
  • ffc673f859 Bound Dispatch concurrency and references
  • pkg/oci: mask thermal interrupt info (#14184)
  • core/unpack: fetch layers of every config-sharing manifest (#14142)
    • 4684c683c2 core/unpack: fetch layers of every config-sharing manifest
    • 7fba9f7c3c Create new imagetest package

Dependency Changes

This release has no dependency changes

Previous release can be found at v1.7.35

containerd 2.4.0

Choose a tag to compare

@github-actions github-actions released this 16 Sep 20:08
v2.4.0
a7fe631

Welcome to the v2.4.0 release of containerd!

containerd 2.4 is a regular (non-LTS) release with a shorter support window,
intended for users who want to adopt new features sooner. As the release
following the 2.3 LTS, it is the point in the release cycle where previously
deprecated features may be removed, so this release may include breaking
changes; check the notes below and clear any deprecation warnings from your
current version before upgrading.

Users prioritizing stability and a longer support lifecycle should stay on the
2.3 LTS release.

Highlights

Container Runtime Interface (CRI)

  • Enable mount manager for image mounts in CRI (#13542)
  • Export sandbox image and CNI directory configuration in CRI plugin info (#13940)
  • Set default runtimeFeatures.UserNamespacesHostNetwork to true (#13162)
  • Support OCI runtime feature introspection for non-runc runtimes (#13504)

Image Distribution

  • Apply hardening to strip sensitive authentication headers when fetching descriptor URLs (#12889)
  • Support propagating HTTP 299 warning headers from registries to the resolver (#12698)
  • Use klauspost/compress for gzip layer decompression (#13560)

Image Storage

  • Add client options to fetch all layer content during unpack even when snapshots exist (#14126)
  • Include media type in content create events (#13833)
  • Add forward References to the GC collection context (#13634)

Node Resource Interface (NRI)

  • Expose container image name, digest, and config digest to NRI plugins (#13960)
  • Emit deprecation warnings for plugins using deprecated NRI interfaces (#13916)

Runtime

  • Mask /proc/interrupts and CPU thermal throttle sysfs paths in Linux containers by default (#14090)
  • Add UpdateSandbox RPC to propagate sandbox controller updates to the shim (#14105)
  • Avoid immediately restarting containers with restart=always policy after they are explicitly stopped (#13993)
  • Pass tracing context from shim to runc and hooks (#14036)
  • Fix user and group lookup failures in container rootfs containing symlinked /etc/passwd or /etc/group (#13818)
  • Implement Windows named-pipe server and log streaming support in pkg/shim (#13948)
  • Enable log scrubbing by default on Windows (#13837)
  • Allow specifying parent checkpoint directory when checkpointing with runc (#13699)

Snapshotters

  • Add Prometheus metrics for EROFS snapshotter layer content cache (#13941)
  • Support warm image cache for erofs snapshotter (#13813)
  • Add max size label for snapshots (#13520)

Breaking

  • Remove deprecated CRI and tracing configuration options:
    • Remove enable_cdi in CRI runtime configuration (CDI is now always enabled)
    • Remove bin_dir in CRI CNI configuration (use bin_dirs)
    • Remove endpoint, protocol, and insecure in OTLP tracing processor configuration (use standard OTLP environment variables)
    • Remove service_name and sampling_ratio in internal tracing configuration (use standard OpenTelemetry environment variables) (#14166)
  • Remove restore in CreateContainer (#13871)

Deprecations

  • Deprecate containerd.io/runtime-allow-mounts shim annotation in favor of MountCapabilities bootstrap extension (#14002)
  • Remove deprecated shim.Command from pkg (#13991)
  • Deprecate task API address and version fields in runc options and move to CreateTaskRequest (#13360)

Please try out the release binaries and report any issues at
https://github.com/containerd/containerd/issues.

Contributors

  • Maksym Pavlenko
  • Sebastiaan van Stijn
  • Samuel Karp
  • Derek McGowan
  • Wei Fu
  • Akihiro Suda
  • Mike Brown
  • Paweł Gronowski
  • Chris Henzie
  • Phil Estes
  • Brian Goff
  • Austin Vazquez
  • ningmingxiao
  • Jordan Liggitt
  • Akhil Mohan
  • Eshaan Mathur
  • Krisztian Litkey
  • Chris Ayoub
  • Kazuyoshi Kato
  • Kir Kolyshkin
  • Sergey Kanzhelev
  • Ahmet Alp Balkan
  • Arpit Jain
  • Cindy Li
  • Damien Grisonnet
  • Esteban Ginez
  • Gao Xiang
  • Harsh Rawat
  • Laura Lorenz
  • Maksim An
  • Oleh Konko
  • Philip Laine
  • Abhishek Bhunia
  • Alan Grosskurth
  • Albin Kerouanton
  • Alex Lyn
  • Aman Raj
  • Amir Alavi
  • Amit Barve
  • Andrew Halaney
  • AprilNEA
  • Arjun Yogidas
  • Ayato Tokubi
  • Aysha Afrah Ziya
  • Ben Cressey
  • Bing Hongtao
  • Chris Crone
  • Craig Gumbley
  • Daniel De Graaf
  • Davanum Srinivas
  • Dr. Jan-Philip Gehrcke
  • Harshal Patel
  • Henry Wang
  • Hsiu-Chi Tsai
  • JP Phillips
  • Jing Chen
  • Kohei Tokunaga
  • LEI WANG
  • Martín Fernández
  • Mikhail Dmitrichenko
  • Nahum Litvin
  • Nikolaus Schuetz
  • Pablo Garcia Caceres
  • Paco Xu
  • Robert Cronin
  • SaloniRathi
  • Shambhavi Srivastava
  • Tianon Gravi
  • XlabAI
  • Yuanliang Zhang
  • ayush-panta
  • crawfordxx
  • cshung
  • match man
  • s3onghyun
  • 归寂
  • 徐晓伟

Changes

658 commits

  • 647fafa847 Prepare release notes for v2.4.0
  • Prepare release notes for api/v1.12.0 (#14170)
    • 5c4ea21de3 Prepare release notes for api/v1.12.0
  • Deprecations and removals for 2.4 (#14166)
    • 531b3a37b9 tracing: remove deprecated tracing config options
    • ca8579a334 tracing: add tests for otlp exporter and env vars
    • ee024b7c99 tracing: remove deprecated otlp configs
    • f7c654fb4f cri: remove deprecated cni bin_dir
    • 4f7de25abb cri: remove enable_cdi config option
    • 830b48d3fd cri: delay registry config removal to 2.7
  • Prepare release notes for v2.4.0-rc.0 (#14115)
    • c02620e398 Prepare release notes for v2.4.0-rc.0
    • 02c7c97f43 Update release doc for 2.4.0 release
    • 484e5aba58 vendor: github.com/containerd/containerd/api v1.12.0-rc.1
    • 67174d675c mailmap: add Paweł Gronowski
  • Update erofs snapshotter to record blob source (#14107)
    • 697a7571a4 erofs: give a dm-verity device a name unique to its mount
    • f75817eb3b erofs: record where a layer blob is
    • d92088d822 erofs: refuse to apply into a read-only snapshot
    • 8cc0b076a6 erofs: serve layer content cache on parented Prepare
  • build(deps): bump the golang-x group with 4 updates (#14150)
    • 75138b3fda build(deps): bump the golang-x group with 4 updates
  • build(deps): bump github.com/klauspost/compress from 1.19.2 to 1.20.0 (#14153)
    • 353342cae6 build(deps): bump github.com/klauspost/compress from 1.19.2 to 1.20.0
  • pkg/oci: mask thermal interrupt info (#14090)
  • vendor: github.com/containerd/nri v0.12.3 ([#14065](https://g...
Read more