Skip to content
containerd 1.7.7

Welcome to the v1.7.7 release of containerd!

The seventh patch release for containerd 1.7 contains various fixes and updates.

### Notable Updates

* **Require plugins to succeed after registering readiness** ([#9165](https://github.com/containerd/containerd/pull/9165))
* **Handle unexpected shim kill events** ([#9132](https://github.com/containerd/containerd/pull/9132))
* **Build binaries with Go 1.21.1** ([#9167](https://github.com/containerd/containerd/pull/9167))
* **cri: Stop recommending disable_cgroup** ([#9168](https://github.com/containerd/containerd/pull/9168))
* **remotes/docker: Fix MountedFrom prefixed with target repository** ([#9193](https://github.com/containerd/containerd/pull/9193))
* **remotes: always try to establish tls connection when tls configured** ([#9188](https://github.com/containerd/containerd/pull/9188))
* **NRI: Add support for rlimits** ([#48](https://github.com/containerd/nri/pull/48))

See the changelog for complete list of changes

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

### Contributors

* Derek McGowan
* Samuel Karp
* Krisztian Litkey
* Wei Fu
* Phil Estes
* Sebastiaan van Stijn
* Iceber Gu
* Mike Brown
* Akihiro Suda
* Paweł Gronowski
* Steve Griffith
* Aditya Ramani
* Austin Vazquez
* Danny Canter
* James Sturtevant
* Kern Walster
* ZP-AlwaysWin

### Changes
<details><summary>31 commits</summary>
<p>

* [release/1.7] Prepare release notes for v1.7.7 ([#9194](https://github.com/containerd/containerd/pull/9194))
  * [`a34fa5681`](https://github.com/containerd/containerd/commit/a34fa5681a8cf8a250cdb638e29f54be44b7554f) Prepare release notes for v1.7.7
* [release/1.7] Allow for images with artifacts to pull ([#9149](https://github.com/containerd/containerd/pull/9149))
  * [`6ca0aebf0`](https://github.com/containerd/containerd/commit/6ca0aebf0c40c3a2ea59c0ede440f9b6be5d1ded) Allow for images with artifacts to pull
* [release 1.7] remotes/docker: Fix MountedFrom prefixed with target repository ([#9193](https://github.com/containerd/containerd/pull/9193))
  * [`7df492a95`](https://github.com/containerd/containerd/commit/7df492a95c7283a3f402b5a0e96030e42724d9d0) remotes/docker: Fix MountedFrom prefixed with target repository
* [release/1.7] Update x/net to 0.13 ([#9134](https://github.com/containerd/containerd/pull/9134))
  * [`b3db314a5`](https://github.com/containerd/containerd/commit/b3db314a58311b3e754906baf356ec83d05015d6) Bump x/net to 0.13
* [release/1.7] remotes: always try to establish tls connection when tls configured ([#9188](https://github.com/containerd/containerd/pull/9188))
  * [`7779ce64e`](https://github.com/containerd/containerd/commit/7779ce64e563f366199e7b22972ca18ec060b944) remotes: always try to establish tls connection when tls configured
* [release/1.7] cri: stop recommending disable_cgroup ([#9168](https://github.com/containerd/containerd/pull/9168))
  * [`6013b5e03`](https://github.com/containerd/containerd/commit/6013b5e03ebadfc70eb711118a05e24891f8e2dc) cri: stop recommending disable_cgroup
* [release/1.7] Require plugins to succeed after registering readiness ([#9165](https://github.com/containerd/containerd/pull/9165))
  * [`a83c66813`](https://github.com/containerd/containerd/commit/a83c66813f908c861ad3d908755d4c4b0a86778c) Require plugins to succeed after registering readiness
  * [`171d76849`](https://github.com/containerd/containerd/commit/171d76849393a3efa3b244f84c7dceff8c7d5026) cri: call RegisterReadiness after NewCRIService
* [release/1.7] Handle unexpected shim kill events ([#9132](https://github.com/containerd/containerd/pull/9132))
  * [`3d27bc738`](https://github.com/containerd/containerd/commit/3d27bc738a6e6762a9c240f420491632e3eaae3d) Handle unexpected shim kill events
* [release/1.7] Build binaries with 1.21.1 ([#9167](https://github.com/containerd/containerd/pull/9167))
  * [`4ffa3ed29`](https://github.com/containerd/containerd/commit/4ffa3ed2940b122cf5191746edeb30e177ea9820) Build binaries with 1.21.1
* [release/1.7] vendor: github.com/Microsoft/hcsshim v0.11.1 ([#9127](https://github.com/containerd/containerd/pull/9127))
  * [`5756f6064`](https://github.com/containerd/containerd/commit/5756f6064b89c4c403439b49353d5dd035ba8c4f) [release/1.7] vendor: github.com/Microsoft/hcsshim v0.11.1
* [release/1.7 backport] alias log package to github.com/containerd/log v0.1.0 ([#9106](https://github.com/containerd/containerd/pull/9106))
  * [`09633b539`](https://github.com/containerd/containerd/commit/09633b539fad441c730569050e66a87d713a14a9) deprecate logs package, but disable linter (for transitioning)
  * [`cb201519f`](https://github.com/containerd/containerd/commit/cb201519f8757f4272d88f3a785a4cb56215095c) alias log package to github.com/containerd/log v0.1.0
  * [`a5024e6dd`](https://github.com/containerd/containerd/commit/a5024e6dd9f797051a465516066b248294c434e1) vendor: github.com/stretchr/testify v1.8.4
  * [`7bd976af3`](https://github.com/containerd/containerd/commit/7bd976af3fe068a79fec23d9fc05a69e26aa18c3) vendor: github.com/sirupsen/logrus v1.9.3
* [release/1.7] remotes/docker: Add MountedFrom and Exists push status ([#9097](https://github.com/containerd/containerd/pull/9097))
  * [`8cd2d33c2`](https://github.com/containerd/containerd/commit/8cd2d33c2aaa730717be1b75a4d2f3629e493c55) [release/1.7] remotes/docker: Add MountedFrom and Exists push status
* [release/1.7] vendor: update github.com/containerd/nri@v0.4.0 ([#9099](https://github.com/containerd/containerd/pull/9099))
  * [`3ca015e55`](https://github.com/containerd/containerd/commit/3ca015e55672c128d9f021d14f49ef96c247cd5b) nri: update mock plugin handlers
  * [`4cd208c1f`](https://github.com/containerd/containerd/commit/4cd208c1f2d80d863776c1947881d5283f3b25fc) vendor: update github.com/containerd/nri@v0.4.0
</p>
</details>

### Changes from containerd/log
<details><summary>9 commits</summary>
<p>

* Update golangci to 1.49 ([#1](https://github.com/containerd/log/pull/1))
  * [`89c9a54`](https://github.com/containerd/log/commit/89c9a54561e8736fddc519cf033d936de65ebe67) Update golangci to 1.49
  * [`cf26711`](https://github.com/containerd/log/commit/cf267115d825238992448dbe1cd6cd440c934d8a) Update description in README
  * [`f9f250c`](https://github.com/containerd/log/commit/f9f250cc3a5d033c759b715aa09ff7cdbfc19500) Add project details
  * [`fb7fe3d`](https://github.com/containerd/log/commit/fb7fe3d663dee55b38f2ab094d9ac794dcacba40) Add github CI flow
  * [`7e13034`](https://github.com/containerd/log/commit/7e13034365475c99956f31770c43e296fc6d1a98) Add go module
  * [`16a3c76`](https://github.com/containerd/log/commit/16a3c768269b03fe62fff34d3a76528335a35064) Rename log import from logtest
  * [`698c398`](https://github.com/containerd/log/commit/698c39829fd9372465cb2537db16a7346afb9f31) Add README
  * [`87c83c4`](https://github.com/containerd/log/commit/87c83c42bbd22c5f1d3725fc5006b35217b4629a) Add license file
</p>
</details>

### Changes from containerd/nri
<details><summary>35 commits</summary>
<p>

* releases: update note about 0.4.0 ([#50](https://github.com/containerd/nri/pull/50))
  * [`5f13915`](https://github.com/containerd/nri/commit/5f139156d546cb68a8495c9c36cfc6a574ba3a55) releases: update note about 0.4.0
* Add support for rlimits ([#48](https://github.com/containerd/nri/pull/48))
  * [`5ecea04`](https://github.com/containerd/nri/commit/5ecea042d15be1ba5e0b988a40a4c90fb2210a7f) ulimit-adjuster: add validation for hard limits
  * [`db3de10`](https://github.com/containerd/nri/commit/db3de101ccaba370f9238188da0d8e05039efdee) test: exclude ulimit-adjuster from ginkgo
  * [`f0deb59`](https://github.com/containerd/nri/commit/f0deb59b4fbf7bcc62597a1299f4544638daa81a) ulimit-adjuster: new sample plugin
  * [`d2dd708`](https://github.com/containerd/nri/commit/d2dd708de134cfe0617821142557b3e55b0bdf64) Add support for rlimits
  * [`efaf36e`](https://github.com/containerd/nri/commit/efaf36e49f30c4ca0bfb0bba2c412e87241674c1) api: add POSIXRlimit type
* .github: add test build to CI workflow. ([#47](https://github.com/containerd/nri/pull/47))
  * [`3f092c2`](https://github.com/containerd/nri/commit/3f092c29cf62a77c9eadaa9d7ff9ac28ece3d180) .github: add test build to CI workflow.
* stub: pass context to plugins, pass updated resources to UpdateContainers. ([#40](https://github.com/containerd/nri/pull/40))
  * [`01d5f14`](https://github.com/containerd/nri/commit/01d5f14d96708830f232b2744742fc14763816b1) Add a note about NRI API stability and release notes.
  * [`ea9976d`](https://github.com/containerd/nri/commit/ea9976d8dae3a6e630da76a26dbef44b5c8a3de3) adaptation: add UpdateContainer tests.
  * [`d042d24`](https://github.com/containerd/nri/commit/d042d24bc4a96fa5fcf1aa0d2195ff75833d7d4e) stub: fix plugin UpdateContainerInterface.
  * [`f5d0f51`](https://github.com/containerd/nri/commit/f5d0f513608b2afc3fcc5e6bdf76b10b3004c14c) plugins: update plugins for stub changes.
  * [`b4bd301`](https://github.com/containerd/nri/commit/b4bd301a1ead4d277af088e321c05e76102c8769) adaptation: update tests with stub changes.
  * [`9d86150`](https://github.com/containerd/nri/commit/9d86150fce4318491481e354d0f34c6b76e8806e) stub: pass context to plugin event handlers.
* Updated the OCI Hook Injector README to resovle broken links to the p… ([#34](https://github.com/containerd/nri/pull/34))
  * [`5eee915`](https://github.com/containerd/nri/commit/5eee9158f7fab6294bdbc5c76b2793f2dbe9faec) removed link
  * [`c783fc7`](https://github.com/containerd/nri/commit/c783fc76a80b315253d407f1e74ff9263cf5ce21) Resolves broken podman links and adds details to help better guide people in testing.
* Fix ParseEventMask to produce proper masks for 'pod' and 'container' shorthand event notations. ([#39](https://github.com/containerd/nri/pull/39))
  * [`da291a6`](https://github.com/containerd/nri/commit/da291a66180b6989a6dcc6bcffcc3257c185f8f8) Fix ParseEventMask to produce proper masks
* fix the `NRI_PLUGIN_NAME` env value when launching a pre-installed plugin ([#42](https://github.com/containerd/nri/pull/42))
  * [`4a4cea6`](https://github.com/containerd/nri/commit/4a4cea6142a5a34301b796a36355e3b38bb98522) fix the NRI_PLUGIN_NAME env value when launching a pre-installed plugin
  * [`a67478e`](https://github.com/containerd/nri/commit/a67478ed7c0b38454f3ef4e86f36d870c365c0d5) stub: update setIdentify to ensureIdentify
* update module name of the logger plugin ([#41](https://github.com/containerd/nri/pull/41))
  * [`841f5ed`](https://github.com/containerd/nri/commit/841f5ed96067b8d737e39e9df16c55231c350d1d) update module name of the logger plugin
* Add gitignore for build artifacts ([#32](https://github.com/containerd/nri/pull/32))
  * [`8d9c64d`](https://github.com/containerd/nri/commit/8d9c64def7f2ba89a065990e89c2bf39f8046bac) Add gitignore for build artifacts
* Makefile: fix 'install-*' targets. ([#38](https://github.com/containerd/nri/pull/38))
  * [`c03d1be`](https://github.com/containerd/nri/commit/c03d1bee1efca43e4b59395622510844b36cd26c) Makefile: fix 'install-*' targets.
* docs: add a chapter about security considerations. ([#36](https://github.com/containerd/nri/pull/36))
  * [`ab28e71`](https://github.com/containerd/nri/commit/ab28e7136bbf3c41c7344b0430087c1aed47b05a) docs: add a chapter about security considerations.
* api: initialize OCI LinuxMemory resources to empty. ([#37](https://github.com/containerd/nri/pull/37))
  * [`2862d98`](https://github.com/containerd/nri/commit/2862d98443ccdb1162963ee979639fd973ddc37b) api: initialize OCI LinuxMemory resources to empty.
</p>
</details>

### Dependency Changes

* **github.com/Microsoft/hcsshim**  v0.11.0 -> v0.11.1
* **github.com/containerd/log**     v0.1.0 **_new_**
* **github.com/containerd/nri**     v0.3.0 -> v0.4.0
* **github.com/sirupsen/logrus**    v1.9.0 -> v1.9.3
* **github.com/stretchr/testify**   v1.8.2 -> v1.8.4
* **golang.org/x/crypto**           v0.1.0 -> v0.11.0
* **golang.org/x/net**              v0.8.0 -> v0.13.0
* **golang.org/x/sys**              v0.7.0 -> v0.10.0
* **golang.org/x/term**             v0.6.0 -> v0.10.0
* **golang.org/x/text**             v0.8.0 -> v0.11.0

Previous release can be found at [v1.7.6](https://github.com/containerd/containerd/releases/tag/v1.7.6)
### 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.
* `cri-containerd-<VERSION>-<OS>-<ARCH>.tar.gz`:     (Deprecated)
* `cri-containerd-cni-<VERSION>-<OS>-<ARCH>.tar.gz`: (Deprecated)

In addition to containerd, typically you will have to install [runc](https://github.com/opencontainers/runc/releases)
and [CNI plugins](https://github.com/containernetworking/plugins/releases) from their official sites too.

See also the [Getting Started](https://github.com/containerd/containerd/blob/main/docs/getting-started.md) documentation.