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:
DockerKernelProvider
is invoked by the application to locate and identify specific kernel specificiations (kernelspecs) that manage kernel lifecycles within Docker configurations.- Either of
DockerSwarmKernelLifecycleManager
orDockerKernelLifecycleManager
depending on the content of thedocker_kernel.json
file. One of these classes is instantiated by theRemoteKernelManager
to 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_provider
Criteria for discovery of the kernel specification via the DockerKernelProvider
is that a docker_kernel.json
file exist in a sub-directory of kernels
.