UNPKG

lakutata

Version:

An IoC-based universal application framework.

147 lines (143 loc) 4.85 kB
import { Component } from './TypeDef.internal.96.js'; import { DockerImage, DockerContainer } from './TypeDef.internal.105.js'; import { ImagePullOptions, ImageBuildOptions, ImageImportOptions } from './TypeDef.internal.106.js'; import { IDockerKeyObject, IDockerConnectionOptions, IDockerHttpConnectionOptions, IDockerHttpsConnectionOptions, IDockerSSHConnectionOptions } from './TypeDef.internal.107.js'; import { NetworkCreateOptions } from './TypeDef.internal.108.js'; import { NetworkInfo } from './TypeDef.internal.109.js'; import { ContainerSettingOptions } from './TypeDef.internal.110.js'; import { DockerPruneOptions } from './TypeDef.internal.111.js'; import { DockerAuthOptions } from './TypeDef.internal.112.js'; import { ComponentOptionsBuilder } from './TypeDef.internal.100.js'; declare class Docker extends Component { #private; protected readonly socketPath?: string | undefined; protected readonly host?: string | undefined; protected readonly port?: number | string | undefined; protected readonly username?: string | undefined; protected readonly headers?: { [name: string]: string; }; protected readonly ca?: string | string[] | Buffer | Buffer[] | undefined; protected readonly cert?: string | string[] | Buffer | Buffer[] | undefined; protected readonly key?: string | string[] | Buffer | Buffer[] | IDockerKeyObject[] | undefined; protected readonly protocol?: 'https' | 'http' | 'ssh' | undefined; protected readonly timeout?: number | undefined; protected readonly version?: string | undefined; protected readonly sshAuthAgent?: string | undefined; /** * Initializer * @protected */ protected init(): Promise<void>; /** * Destroyer * @protected */ protected destroy(): Promise<void>; /** Docker Common Operations **/ /** * Prune unused resources * @param options */ prune(options?: DockerPruneOptions): Promise<void>; /** * Login to repository * @param options */ loginRepository(options: DockerAuthOptions): Promise<void>; /** * Check repository auth * @param options */ checkRepositoryAuth(options: DockerAuthOptions): Promise<boolean>; /** Docker Image Operations **/ /** * List docker images */ listImages(): Promise<DockerImage[]>; /** * Pull docker image from repository */ pullImage(options: ImagePullOptions): Promise<DockerImage>; /** * Build docker image */ buildImage(options: ImageBuildOptions): Promise<DockerImage>; /** * Import docker image from .tar file */ importImage(options: ImageImportOptions): Promise<DockerImage>; /** * Get docker image * @param repoTagOrId */ getImage(repoTagOrId: string): Promise<DockerImage>; /** Docker Container Operations **/ /** * List docker containers */ listContainers(): Promise<DockerContainer[]>; /** * Get docker container * @param id */ getContainer(id: string): Promise<DockerContainer>; /** * Create container * @param imageId * @param platform * @param options */ createContainer(imageId: string, platform: string, options: ContainerSettingOptions): Promise<DockerContainer>; /** Docker Network Operations **/ /** * Create docker network * @param options */ createNetwork(options: NetworkCreateOptions): Promise<NetworkInfo>; /** * Remove docker network * @param id */ removeNetwork(id: string): Promise<void>; /** * List docker networks */ listNetworks(): Promise<NetworkInfo[]>; /** * Get docker network info * @param id */ getNetwork(id: string): Promise<NetworkInfo>; } /** * Build docker config * @param options * @constructor */ declare const BuildDockerConnectionOptions: ComponentOptionsBuilder<IDockerConnectionOptions>; /** * Build docker socket config * @param options * @constructor */ declare const BuildDockerSocketConnectionOptions: ComponentOptionsBuilder<IDockerConnectionOptions>; /** * Build docker http config * @param options * @constructor */ declare const BuildDockerHttpConnectionOptions: ComponentOptionsBuilder<IDockerHttpConnectionOptions>; /** * Build docker https config * @param options * @constructor */ declare const BuildDockerHttpsConnectionOptions: ComponentOptionsBuilder<IDockerHttpsConnectionOptions>; /** * Build docker ssh config * @param options * @constructor */ declare const BuildDockerSSHConnectionOptions: ComponentOptionsBuilder<IDockerSSHConnectionOptions>; export { BuildDockerConnectionOptions, BuildDockerHttpConnectionOptions, BuildDockerHttpsConnectionOptions, BuildDockerSSHConnectionOptions, BuildDockerSocketConnectionOptions, Docker };