NOTE: This repository is experimental and undergoing frequent changes!
The Docker Kernel Provider package provides support necessary for launching and managing Jupyter kernels within Docker or Docker Swarm clusters. This is accomplished via two classes:
DockerKernelProvideris invoked by the application to locate and identify specific kernel specificiations (kernelspecs) that manage kernel lifecycles within Docker configurations.- Either of
DockerSwarmKernelLifecycleManagerorDockerKernelLifecycleManagerdepending on the content of thedocker_kernel.jsonfile. One of these classes is instantiated by theRemoteKernelManagerto peform the kernel lifecycle management. This class performs post-launch discovery of the kernel container and handles its termination via the docker-py python API.
DockerKernelProvider is a pip-installable package:
pip install docker_kernel_providerCriteria for discovery of the kernel specification via the DockerKernelProvider is that a docker_kernel.json file exist in a sub-directory of kernels.