dockerfile

package
v0.14.7 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 21, 2025 License: Apache-2.0 Imports: 26 Imported by: 0

Documentation

Index

Constants

View Source
const CFlags = "ENV CFLAGS=\"-O3 -funroll-loops -fno-strict-aliasing -flto -S\""
View Source
const DockerignoreHeader = `` /* 231-byte string literal not displayed */
View Source
const FAST_GENERATOR_NAME = "FAST_GENERATOR"
View Source
const FUSE_RPC_WEIGHTS_PATH = "/srv/r8/fuse-rpc/weights/sha256"
View Source
const LDConfigCacheBuildCommand = "RUN find / -type f -name \"*python*.so\" -printf \"%h\\n\" | sort -u > /etc/ld.so.conf.d/cog.conf && ldconfig"
View Source
const MONOBASE_CACHE_DIR = "/var/cache/monobase"
View Source
const MONOBASE_CACHE_MOUNT = "--mount=type=cache,target=" + MONOBASE_CACHE_DIR + ",id=monobase-cache"
View Source
const MONOBASE_IMAGE = "r8.im/monobase:latest"
View Source
const MinimumCUDAVersion = "11.6"
View Source
const MinimumPythonVersion = "3.8"
View Source
const MinimumTorchVersion = "1.13.1"
View Source
const PrecompilePythonCommand = "" /* 247-byte string literal not displayed */
View Source
const STANDARD_GENERATOR_NAME = "STANDARD_GENERATOR"
View Source
const StripDebugSymbolsCommand = "find / -type f -name \"*python*.so\" -not -name \"*cpython*.so\" -exec strip -S {} \\;"
View Source
const UV_CACHE_DIR = "/srv/r8/monobase/uv/cache"
View Source
const UV_CACHE_MOUNT = "--mount=type=cache,target=" + UV_CACHE_DIR + ",id=uv-cache"

Variables

View Source
var CogEmbed embed.FS

Functions

func BaseImageConfigurationExists added in v0.9.7

func BaseImageConfigurationExists(cudaVersion, pythonVersion, torchVersion string) (bool, string, string, string)

func BaseImageName added in v0.9.7

func BaseImageName(cudaVersion string, pythonVersion string, torchVersion string) string

func CheckMajorMinorOnly added in v0.14.0

func CheckMajorMinorOnly(s string) bool

func CheckMajorMinorPatch added in v0.14.0

func CheckMajorMinorPatch(s string) bool

func CheckMajorOnly added in v0.14.0

func CheckMajorOnly(s string) bool

Types

type AvailableBaseImageConfigurations added in v0.9.10

type AvailableBaseImageConfigurations struct {
	PythonVersions []PythonVersion `json:"python_versions"`
}

type BaseImageConfiguration added in v0.9.7

type BaseImageConfiguration struct {
	CUDAVersion   string `json:"cuda_version" yaml:"cuda_version"`
	PythonVersion string `json:"python_version" yaml:"python_version"`
	TorchVersion  string `json:"torch_version" yaml:"torch_version"`
}

func BaseImageConfigurations added in v0.9.7

func BaseImageConfigurations() []BaseImageConfiguration

BaseImageConfigurations returns a list of CUDA/Python/Torch versions

func (BaseImageConfiguration) MarshalJSON added in v0.9.7

func (b BaseImageConfiguration) MarshalJSON() ([]byte, error)

type BaseImageGenerator added in v0.9.7

type BaseImageGenerator struct {
	// contains filtered or unexported fields
}

func NewBaseImageGenerator added in v0.9.7

func NewBaseImageGenerator(cudaVersion string, pythonVersion string, torchVersion string, command command.Command) (*BaseImageGenerator, error)

func (*BaseImageGenerator) GenerateDockerfile added in v0.9.7

func (g *BaseImageGenerator) GenerateDockerfile() (string, error)

type CUDAVersion added in v0.9.10

type CUDAVersion struct {
	Version string `json:"versions"`
}

type FastGenerator added in v0.13.7

type FastGenerator struct {
	Config *config.Config
	Dir    string
	// contains filtered or unexported fields
}

func NewFastGenerator added in v0.13.7

func NewFastGenerator(config *config.Config, dir string, dockerCommand command.Command, matrix *MonobaseMatrix, localImage bool) (*FastGenerator, error)

func (*FastGenerator) BaseImage added in v0.13.7

func (g *FastGenerator) BaseImage() (string, error)

func (*FastGenerator) BuildContexts added in v0.14.4

func (g *FastGenerator) BuildContexts() (map[string]string, error)

func (*FastGenerator) BuildDir added in v0.14.4

func (g *FastGenerator) BuildDir() (string, error)

func (*FastGenerator) Cleanup added in v0.13.7

func (g *FastGenerator) Cleanup() error

func (*FastGenerator) GenerateDockerfileWithoutSeparateWeights added in v0.13.7

func (g *FastGenerator) GenerateDockerfileWithoutSeparateWeights() (string, error)

func (*FastGenerator) GenerateInitialSteps added in v0.13.7

func (g *FastGenerator) GenerateInitialSteps() (string, error)

func (*FastGenerator) GenerateModelBase added in v0.13.7

func (g *FastGenerator) GenerateModelBase() (string, error)

func (*FastGenerator) GenerateModelBaseWithSeparateWeights added in v0.13.7

func (g *FastGenerator) GenerateModelBaseWithSeparateWeights(imageName string) (weightsBase string, dockerfile string, dockerignoreContents string, err error)

func (*FastGenerator) GenerateWeightsManifest added in v0.13.7

func (g *FastGenerator) GenerateWeightsManifest() (*weights.Manifest, error)

func (*FastGenerator) IsUsingCogBaseImage added in v0.13.7

func (g *FastGenerator) IsUsingCogBaseImage() bool

func (*FastGenerator) Name added in v0.13.7

func (g *FastGenerator) Name() string

func (*FastGenerator) SetPrecompile added in v0.13.7

func (g *FastGenerator) SetPrecompile(precompile bool)

func (*FastGenerator) SetStrip added in v0.13.7

func (g *FastGenerator) SetStrip(strip bool)

func (*FastGenerator) SetUseCogBaseImage added in v0.13.7

func (g *FastGenerator) SetUseCogBaseImage(useCogBaseImage bool)

func (*FastGenerator) SetUseCogBaseImagePtr added in v0.13.7

func (g *FastGenerator) SetUseCogBaseImagePtr(useCogBaseImage *bool)

func (*FastGenerator) SetUseCudaBaseImage added in v0.13.7

func (g *FastGenerator) SetUseCudaBaseImage(argumentValue string)

type Generator added in v0.0.16

type Generator interface {
	GenerateInitialSteps() (string, error)
	SetUseCogBaseImage(bool)
	SetUseCogBaseImagePtr(*bool)
	GenerateModelBaseWithSeparateWeights(string) (string, string, string, error)
	Cleanup() error
	SetStrip(bool)
	SetPrecompile(bool)
	SetUseCudaBaseImage(string)
	IsUsingCogBaseImage() bool
	BaseImage() (string, error)
	GenerateWeightsManifest() (*weights.Manifest, error)
	GenerateDockerfileWithoutSeparateWeights() (string, error)
	GenerateModelBase() (string, error)
	Name() string
	BuildDir() (string, error)
	BuildContexts() (map[string]string, error)
}

func NewGenerator

func NewGenerator(config *config.Config, dir string, buildFast bool, command command.Command, localImage bool) (Generator, error)

type MonobaseMatrix added in v0.14.0

type MonobaseMatrix struct {
	Id             int            `json:"id"`
	CudaVersions   []string       `json:"cuda_versions"`
	CudnnVersions  []string       `json:"cudnn_versions"`
	PythonVersions []string       `json:"python_versions"`
	TorchVersions  []string       `json:"torch_versions"`
	Venvs          []MonobaseVenv `json:"venvs"`
}

func NewMonobaseMatrix added in v0.14.0

func NewMonobaseMatrix(client *http.Client) (*MonobaseMatrix, error)

func (MonobaseMatrix) DefaultCudnnVersion added in v0.14.0

func (m MonobaseMatrix) DefaultCudnnVersion() string

func (MonobaseMatrix) IsSupported added in v0.14.0

func (m MonobaseMatrix) IsSupported(python string, torch string, cuda string) bool

type MonobaseVenv added in v0.14.0

type MonobaseVenv struct {
	Python string `json:"python"`
	Torch  string `json:"torch"`
	Cuda   string `json:"cuda"`
}

type PyTorchVersion added in v0.9.10

type PyTorchVersion struct {
	Version string `json:"version"`
}

type PythonVersion added in v0.9.10

type PythonVersion struct {
	Version string           `json:"version"`
	PyTorch []PyTorchVersion `json:"pytorch"`
	CUDA    []CUDAVersion    `json:"cuda"`
}

type StandardGenerator added in v0.13.7

type StandardGenerator struct {
	Config *config.Config
	Dir    string

	// these are here to make this type testable
	GOOS   string
	GOARCH string
	// contains filtered or unexported fields
}

func NewStandardGenerator added in v0.13.7

func NewStandardGenerator(config *config.Config, dir string, command command.Command) (*StandardGenerator, error)

func (*StandardGenerator) BaseImage added in v0.13.7

func (g *StandardGenerator) BaseImage() (string, error)

func (*StandardGenerator) BuildContexts added in v0.14.4

func (g *StandardGenerator) BuildContexts() (map[string]string, error)

func (*StandardGenerator) BuildDir added in v0.14.4

func (g *StandardGenerator) BuildDir() (string, error)

func (*StandardGenerator) Cleanup added in v0.13.7

func (g *StandardGenerator) Cleanup() error

func (*StandardGenerator) GenerateDockerfileWithoutSeparateWeights added in v0.13.7

func (g *StandardGenerator) GenerateDockerfileWithoutSeparateWeights() (string, error)

GenerateDockerfileWithoutSeparateWeights generates a Dockerfile that doesn't write model weights to a separate layer.

func (*StandardGenerator) GenerateInitialSteps added in v0.13.7

func (g *StandardGenerator) GenerateInitialSteps() (string, error)

func (*StandardGenerator) GenerateModelBase added in v0.13.7

func (g *StandardGenerator) GenerateModelBase() (string, error)

func (*StandardGenerator) GenerateModelBaseWithSeparateWeights added in v0.13.7

func (g *StandardGenerator) GenerateModelBaseWithSeparateWeights(imageName string) (weightsBase string, dockerfile string, dockerignoreContents string, err error)

GenerateModelBaseWithSeparateWeights creates the Dockerfile and .dockerignore file contents for model weights It returns four values: - weightsBase: The base image used for Dockerfile generation for model weights. - dockerfile: A string that represents the Dockerfile content generated by the function. - dockerignoreContents: A string that represents the .dockerignore content. - err: An error object if an error occurred during Dockerfile generation; otherwise nil.

func (*StandardGenerator) GenerateWeightsManifest added in v0.13.7

func (g *StandardGenerator) GenerateWeightsManifest() (*weights.Manifest, error)

func (*StandardGenerator) IsUsingCogBaseImage added in v0.13.7

func (g *StandardGenerator) IsUsingCogBaseImage() bool

func (*StandardGenerator) Name added in v0.13.7

func (g *StandardGenerator) Name() string

func (*StandardGenerator) SetPrecompile added in v0.13.7

func (g *StandardGenerator) SetPrecompile(precompile bool)

func (*StandardGenerator) SetStrip added in v0.13.7

func (g *StandardGenerator) SetStrip(strip bool)

func (*StandardGenerator) SetUseCogBaseImage added in v0.13.7

func (g *StandardGenerator) SetUseCogBaseImage(useCogBaseImage bool)

func (*StandardGenerator) SetUseCogBaseImagePtr added in v0.13.7

func (g *StandardGenerator) SetUseCogBaseImagePtr(useCogBaseImage *bool)

func (*StandardGenerator) SetUseCudaBaseImage added in v0.13.7

func (g *StandardGenerator) SetUseCudaBaseImage(argumentValue string)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL