dstack is an open-source alternative to Kubernetes, designed to simplify development, training, and deployment of AI across any cloud or on-prem. It supports NVIDIA, AMD, and TPU.
dstack allows running custom Docker images by specifying them in the image property. However, not all images can be used. These are some of the image requirements:
The software in the image should allow running as root
The image should have either apt-get or yum
The image should have /bin/sh
etc.
Proposed
Drop all image requirements and support all valid Docker images, including images built FROM scratch.
Implementation notes
The main source of requirements seems to be the installation and configuration of the OpenSSH server. Possible solutions to dropping the requirements related to the OpenSSH server include:
Shipping a statically-linked OpenSSH server binary that would allow running without root privileges and would not need a package manager for installation.
Using an alternative SSH server implementation in Go, so that the server could be part of the dstack-runner binary.
Current
dstack
allows running custom Docker images by specifying them in theimage
property. However, not all images can be used. These are some of the image requirements:apt-get
oryum
/bin/sh
Proposed
Drop all image requirements and support all valid Docker images, including images built
FROM scratch
.Implementation notes
The main source of requirements seems to be the installation and configuration of the OpenSSH server. Possible solutions to dropping the requirements related to the OpenSSH server include:
dstack-runner
binary.