GitHub - Mirantis/cri-dockerd: dockerd as a compliant Container Runtime Interface for Kubernetes (original) (raw)
cri-dockerd
This adapter provides a shim for Docker Enginethat lets you control Docker via the Kubernetes Container Runtime Interface.
Take a look at the official docs for more information.
IMPORTANT
For users running 0.2.5
or above, the default network plugin is cni
. Kubernetes 1.24+ has removed kubenet
and other network plumbing from upstream as part of the dockershim
removal/deprecation. In order for a cluster to become operational, Calico, Flannel, Weave, or another CNI should be used.
For CI workflows, basic functionality can be provided via containernetworking/plugins.
Motivation
Mirantis and Docker have agreed to partner to maintain the shim code standalone outside Kubernetes, as a conformant CRI interface for the Docker Engine API. For Mirantis customers, that means that Docker Engine’s commercially supported version, Mirantis Container Runtime (MCR), will be CRI compliant. This means that you can continue to build Kubernetes based on the Docker Engine as before, just switching from the built in dockershim to the external one.
Mirantis and Docker intend to work together on making sure it continues to work as well as before and that it passes all the conformance tests and continues to work just like the built in version did. Mirantis will be using this in Mirantis Kubernetes Engine, and Docker will continue to ship this shim in Docker Desktop.
You can find more information about the context for this tool in Don't Panic: Kubernetes and Dockerand on the Mirantisblog.
Community
We can be found on the Kubernetes Slack in the #cri-dockerd channel.
Using cri-dockerd
Install
Refer to the install page for instructions on how to install cri-dockerd
using a package manager.
Advanced Setup
Installing manually
If you want to run cri-dockerd
on an unsupported platform, instructions can be found on the manual install page.
To use with Kubernetes
If you want to use cri-dockerd
with Kubernetes, you can find instructions on the Kubernetes page.
Developing cri-dockerd
We welcome contributions to cri-dockerd
. If you would like to contribute, please refer to the development section of the official docs.
Documentation
The docs are generated using Hugo and the Geekdocs theme. Hugo will need to be installed to generate the docs found in the docs/
directory.
Editing Docs
The docs can be ran locally with hot-reloading to make editing easier. To do so, run the following command in the project's root directory:
This will launch the development server that is included with Hugo. You can then access the docs at http://localhost:1313/