docker

package
v0.14.0 Latest Latest
Warning

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

Go to latest
Published: May 7, 2024 License: Apache-2.0 Imports: 18 Imported by: 7

Documentation

Index

Constants

View Source
const ContainerNotFoundMetadata = "{\"state\": \"container not found\"}"
View Source
const WorkspaceMetadataFormat = "{\"networkId\": \"%s\"}"

Variables

This section is empty.

Functions

func GetContainerCreateConfig

func GetContainerCreateConfig(project *workspace.Project, daytonaDownloadUrl string) *container.Config

Types

type Cursor

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

Cursor structure that implements some methods for manipulating command line's cursor

type DockerClient

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

func (*DockerClient) CreateProject

func (d *DockerClient) CreateProject(project *workspace.Project, daytonaDownloadUrl string, cr *containerregistry.ContainerRegistry, logWriter io.Writer) error

func (*DockerClient) CreateWorkspace

func (d *DockerClient) CreateWorkspace(workspace *workspace.Workspace, logWriter io.Writer) error

func (*DockerClient) DestroyProject

func (d *DockerClient) DestroyProject(project *workspace.Project) error

func (*DockerClient) DestroyWorkspace

func (d *DockerClient) DestroyWorkspace(workspace *workspace.Workspace) error

func (*DockerClient) ExecSync

func (d *DockerClient) ExecSync(containerID string, config types.ExecConfig, outputWriter io.Writer) (*ExecResult, error)

func (*DockerClient) GetContainerLogs

func (d *DockerClient) GetContainerLogs(containerName string, logWriter io.Writer) error

func (*DockerClient) GetProjectContainerName

func (d *DockerClient) GetProjectContainerName(project *workspace.Project) string

func (*DockerClient) GetProjectInfo

func (d *DockerClient) GetProjectInfo(project *workspace.Project) (*workspace.ProjectInfo, error)

func (*DockerClient) GetWorkspaceInfo

func (d *DockerClient) GetWorkspaceInfo(ws *workspace.Workspace) (*workspace.WorkspaceInfo, error)

func (*DockerClient) StartProject

func (d *DockerClient) StartProject(project *workspace.Project) error

func (*DockerClient) StopProject

func (d *DockerClient) StopProject(project *workspace.Project) error

type DockerClientConfig

type DockerClientConfig struct {
	ApiClient client.APIClient
}

type ExecResult

type ExecResult struct {
	StdOut   string
	StdErr   string
	ExitCode int
}

type IDockerClient

type IDockerClient interface {
	CreateProject(project *workspace.Project, serverDownloadUrl string, cr *containerregistry.ContainerRegistry, logWriter io.Writer) error
	CreateWorkspace(workspace *workspace.Workspace, logWriter io.Writer) error

	DestroyProject(project *workspace.Project) error
	DestroyWorkspace(workspace *workspace.Workspace) error

	StartProject(project *workspace.Project) error
	StopProject(project *workspace.Project) error

	GetProjectInfo(project *workspace.Project) (*workspace.ProjectInfo, error)
	GetWorkspaceInfo(ws *workspace.Workspace) (*workspace.WorkspaceInfo, error)

	GetProjectContainerName(project *workspace.Project) string
	ExecSync(containerID string, config types.ExecConfig, outputWriter io.Writer) (*ExecResult, error)
	GetContainerLogs(containerName string, logWriter io.Writer) error
}

func NewDockerClient

func NewDockerClient(config DockerClientConfig) IDockerClient

Jump to

Keyboard shortcuts

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