@zukhruf/docker 0.0.0-stage → 0.3.34
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +902 -2
- package/dist/api-version.d.ts +7 -0
- package/dist/api-version.d.ts.map +1 -0
- package/dist/api-version.js +22 -0
- package/dist/api-version.js.map +1 -0
- package/dist/container-process.d.ts +35 -0
- package/dist/container-process.d.ts.map +1 -0
- package/dist/container-process.js +91 -0
- package/dist/container-process.js.map +1 -0
- package/dist/containers.d.ts +160 -0
- package/dist/containers.d.ts.map +1 -0
- package/dist/containers.js +700 -0
- package/dist/containers.js.map +1 -0
- package/dist/context-store.d.ts +22 -0
- package/dist/context-store.d.ts.map +1 -0
- package/dist/context-store.js +128 -0
- package/dist/context-store.js.map +1 -0
- package/dist/docker.d.ts +57 -0
- package/dist/docker.d.ts.map +1 -0
- package/dist/docker.js +96 -0
- package/dist/docker.js.map +1 -0
- package/dist/engine-api.d.ts +390 -0
- package/dist/engine-api.d.ts.map +1 -0
- package/dist/engine-api.js +4 -0
- package/dist/engine-api.js.map +1 -0
- package/dist/engine-client.d.ts +74 -0
- package/dist/engine-client.d.ts.map +1 -0
- package/dist/engine-client.js +253 -0
- package/dist/engine-client.js.map +1 -0
- package/dist/errors.d.ts +133 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +214 -0
- package/dist/errors.js.map +1 -0
- package/dist/host.d.ts +13 -0
- package/dist/host.d.ts.map +1 -0
- package/dist/host.js +22 -0
- package/dist/host.js.map +1 -0
- package/dist/images.d.ts +40 -0
- package/dist/images.d.ts.map +1 -0
- package/dist/images.js +173 -0
- package/dist/images.js.map +1 -0
- package/dist/index.d.ts +14 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +6 -0
- package/dist/index.js.map +1 -0
- package/dist/multiplexed-stream.d.ts +11 -0
- package/dist/multiplexed-stream.d.ts.map +1 -0
- package/dist/multiplexed-stream.js +81 -0
- package/dist/multiplexed-stream.js.map +1 -0
- package/dist/ndjson.d.ts +7 -0
- package/dist/ndjson.d.ts.map +1 -0
- package/dist/ndjson.js +21 -0
- package/dist/ndjson.js.map +1 -0
- package/dist/networks.d.ts +46 -0
- package/dist/networks.d.ts.map +1 -0
- package/dist/networks.js +170 -0
- package/dist/networks.js.map +1 -0
- package/dist/options.d.ts +7 -0
- package/dist/options.d.ts.map +1 -0
- package/dist/options.js +2 -0
- package/dist/options.js.map +1 -0
- package/dist/output.d.ts +18 -0
- package/dist/output.d.ts.map +1 -0
- package/dist/output.js +21 -0
- package/dist/output.js.map +1 -0
- package/dist/progress.d.ts +9 -0
- package/dist/progress.d.ts.map +1 -0
- package/dist/progress.js +20 -0
- package/dist/progress.js.map +1 -0
- package/dist/ssh-connection.d.ts +23 -0
- package/dist/ssh-connection.d.ts.map +1 -0
- package/dist/ssh-connection.js +225 -0
- package/dist/ssh-connection.js.map +1 -0
- package/dist/tar-reader.d.ts +22 -0
- package/dist/tar-reader.d.ts.map +1 -0
- package/dist/tar-reader.js +163 -0
- package/dist/tar-reader.js.map +1 -0
- package/dist/tar-writer.d.ts +16 -0
- package/dist/tar-writer.d.ts.map +1 -0
- package/dist/tar-writer.js +114 -0
- package/dist/tar-writer.js.map +1 -0
- package/dist/transport.d.ts +29 -0
- package/dist/transport.d.ts.map +1 -0
- package/dist/transport.js +56 -0
- package/dist/transport.js.map +1 -0
- package/dist/volumes.d.ts +41 -0
- package/dist/volumes.d.ts.map +1 -0
- package/dist/volumes.js +119 -0
- package/dist/volumes.js.map +1 -0
- package/package.json +43 -4
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"containers.js","sourceRoot":"","sources":["../src/containers.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export interface DockerContext {
|
|
2
|
+
name: string;
|
|
3
|
+
host: string;
|
|
4
|
+
/** The context that connect() selects with no options. */
|
|
5
|
+
current: boolean;
|
|
6
|
+
}
|
|
7
|
+
/** An engine as the selection gives it: the context that selected it, and its host. */
|
|
8
|
+
export interface SelectedEngine {
|
|
9
|
+
context: string;
|
|
10
|
+
host: string;
|
|
11
|
+
}
|
|
12
|
+
/** The environment of the host program, such as process.env. The package reads only DOCKER_HOST, DOCKER_CONTEXT and DOCKER_CONFIG. */
|
|
13
|
+
export type Environment = Readonly<Record<string, string | undefined>>;
|
|
14
|
+
/** Selects the engine in the order of the Docker CLI, or the engine that the options name. */
|
|
15
|
+
export declare function selectEngine(options: {
|
|
16
|
+
context?: string | undefined;
|
|
17
|
+
host?: string | undefined;
|
|
18
|
+
environment?: Environment | undefined;
|
|
19
|
+
}): Promise<SelectedEngine>;
|
|
20
|
+
/** Each context of the context store, and the default context. */
|
|
21
|
+
export declare function listContexts(environment?: Environment): Promise<DockerContext[]>;
|
|
22
|
+
//# sourceMappingURL=context-store.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context-store.d.ts","sourceRoot":"","sources":["../src/context-store.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,0DAA0D;IAC1D,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,uFAAuF;AACvF,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;CACd;AAWD,sIAAsI;AACtI,MAAM,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC;AAyGvE,8FAA8F;AAC9F,wBAAsB,YAAY,CAAC,OAAO,EAAE;IAC1C,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,WAAW,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;CACvC,GAAG,OAAO,CAAC,cAAc,CAAC,CAO1B;AAED,kEAAkE;AAClE,wBAAsB,YAAY,CAChC,WAAW,GAAE,WAAgB,GAC5B,OAAO,CAAC,aAAa,EAAE,CAAC,CAO1B"}
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
import { createHash } from 'node:crypto';
|
|
2
|
+
import { readFile, readdir } from 'node:fs/promises';
|
|
3
|
+
import { homedir } from 'node:os';
|
|
4
|
+
import { join } from 'node:path';
|
|
5
|
+
import { ContextNotFoundError } from "./errors.js";
|
|
6
|
+
const DEFAULT_CONTEXT = 'default';
|
|
7
|
+
/** The host of the default context when DOCKER_HOST is not set. */
|
|
8
|
+
function platformHost() {
|
|
9
|
+
return process.platform === 'win32'
|
|
10
|
+
? 'npipe:////./pipe/docker_engine'
|
|
11
|
+
: 'unix:///var/run/docker.sock';
|
|
12
|
+
}
|
|
13
|
+
/** An empty variable is the same as an unset one, as in the Docker CLI. */
|
|
14
|
+
function variable(environment, name) {
|
|
15
|
+
const value = environment[name];
|
|
16
|
+
return value === '' ? undefined : value;
|
|
17
|
+
}
|
|
18
|
+
/** The Docker configuration directory: DOCKER_CONFIG, or ~/.docker. */
|
|
19
|
+
function configDirectory(environment) {
|
|
20
|
+
return variable(environment, 'DOCKER_CONFIG') ?? join(homedir(), '.docker');
|
|
21
|
+
}
|
|
22
|
+
function isMissingFile(error) {
|
|
23
|
+
return (error instanceof Error &&
|
|
24
|
+
'code' in error &&
|
|
25
|
+
(error.code === 'ENOENT' || error.code === 'ENOTDIR'));
|
|
26
|
+
}
|
|
27
|
+
function stringField(value, key) {
|
|
28
|
+
if (typeof value !== 'object' || value === null || !(key in value)) {
|
|
29
|
+
return undefined;
|
|
30
|
+
}
|
|
31
|
+
const field = Reflect.get(value, key);
|
|
32
|
+
return typeof field === 'string' && field !== '' ? field : undefined;
|
|
33
|
+
}
|
|
34
|
+
/** currentContext in config.json, or undefined when the file or the field is absent. */
|
|
35
|
+
async function configuredContext(environment) {
|
|
36
|
+
try {
|
|
37
|
+
const config = JSON.parse(await readFile(join(configDirectory(environment), 'config.json'), 'utf8'));
|
|
38
|
+
return stringField(config, 'currentContext');
|
|
39
|
+
}
|
|
40
|
+
catch (error) {
|
|
41
|
+
if (isMissingFile(error))
|
|
42
|
+
return undefined;
|
|
43
|
+
throw error;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
/** The context that the Docker CLI selects when a command names none. */
|
|
47
|
+
async function currentContext(environment) {
|
|
48
|
+
if (variable(environment, 'DOCKER_HOST'))
|
|
49
|
+
return DEFAULT_CONTEXT;
|
|
50
|
+
return (variable(environment, 'DOCKER_CONTEXT') ??
|
|
51
|
+
(await configuredContext(environment)) ??
|
|
52
|
+
DEFAULT_CONTEXT);
|
|
53
|
+
}
|
|
54
|
+
/** The host of the default context: DOCKER_HOST, or the default host of the platform. */
|
|
55
|
+
function defaultHost(environment) {
|
|
56
|
+
return variable(environment, 'DOCKER_HOST') ?? platformHost();
|
|
57
|
+
}
|
|
58
|
+
function metaDirectory(environment) {
|
|
59
|
+
return join(configDirectory(environment), 'contexts', 'meta');
|
|
60
|
+
}
|
|
61
|
+
/** Endpoints.docker.Host of meta.json, or undefined when the context has no docker endpoint. */
|
|
62
|
+
function hostOfMeta(meta) {
|
|
63
|
+
const endpoints = Reflect.get(Object(meta), 'Endpoints');
|
|
64
|
+
const docker = Reflect.get(Object(endpoints), 'docker');
|
|
65
|
+
return stringField(docker, 'Host');
|
|
66
|
+
}
|
|
67
|
+
/** The host of a context of the context store. */
|
|
68
|
+
async function storedHost(environment, name) {
|
|
69
|
+
const id = createHash('sha256').update(name).digest('hex');
|
|
70
|
+
try {
|
|
71
|
+
const meta = JSON.parse(await readFile(join(metaDirectory(environment), id, 'meta.json'), 'utf8'));
|
|
72
|
+
const host = hostOfMeta(meta);
|
|
73
|
+
if (host === undefined)
|
|
74
|
+
throw new ContextNotFoundError(name);
|
|
75
|
+
return host;
|
|
76
|
+
}
|
|
77
|
+
catch (error) {
|
|
78
|
+
if (isMissingFile(error))
|
|
79
|
+
throw new ContextNotFoundError(name, { cause: error });
|
|
80
|
+
throw error;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
/** The host of a context: the default context takes it from DOCKER_HOST, as the Docker CLI defines it. */
|
|
84
|
+
async function hostOfContext(environment, name) {
|
|
85
|
+
return name === DEFAULT_CONTEXT
|
|
86
|
+
? defaultHost(environment)
|
|
87
|
+
: storedHost(environment, name);
|
|
88
|
+
}
|
|
89
|
+
/** Selects the engine in the order of the Docker CLI, or the engine that the options name. */
|
|
90
|
+
export async function selectEngine(options) {
|
|
91
|
+
if (options.host !== undefined) {
|
|
92
|
+
return { context: DEFAULT_CONTEXT, host: options.host };
|
|
93
|
+
}
|
|
94
|
+
const environment = options.environment ?? {};
|
|
95
|
+
const context = options.context ?? (await currentContext(environment));
|
|
96
|
+
return { context, host: await hostOfContext(environment, context) };
|
|
97
|
+
}
|
|
98
|
+
/** Each context of the context store, and the default context. */
|
|
99
|
+
export async function listContexts(environment = {}) {
|
|
100
|
+
const current = await currentContext(environment);
|
|
101
|
+
const stored = await storedContexts(environment);
|
|
102
|
+
return [
|
|
103
|
+
{ name: DEFAULT_CONTEXT, host: defaultHost(environment) },
|
|
104
|
+
...stored.toSorted((left, right) => left.name.localeCompare(right.name)),
|
|
105
|
+
].map(({ name, host }) => ({ name, host, current: name === current }));
|
|
106
|
+
}
|
|
107
|
+
async function storedContexts(environment) {
|
|
108
|
+
const directory = metaDirectory(environment);
|
|
109
|
+
const ids = await readdir(directory).catch((error) => {
|
|
110
|
+
if (isMissingFile(error))
|
|
111
|
+
return [];
|
|
112
|
+
throw error;
|
|
113
|
+
});
|
|
114
|
+
const contexts = await Promise.all(ids.map(async (id) => {
|
|
115
|
+
const meta = JSON.parse(await readFile(join(directory, id, 'meta.json'), 'utf8').catch((error) => {
|
|
116
|
+
if (isMissingFile(error))
|
|
117
|
+
return 'null';
|
|
118
|
+
throw error;
|
|
119
|
+
}));
|
|
120
|
+
const name = stringField(meta, 'Name');
|
|
121
|
+
const host = hostOfMeta(meta);
|
|
122
|
+
return name === undefined || host === undefined
|
|
123
|
+
? undefined
|
|
124
|
+
: { name, host };
|
|
125
|
+
}));
|
|
126
|
+
return contexts.filter((context) => context !== undefined);
|
|
127
|
+
}
|
|
128
|
+
//# sourceMappingURL=context-store.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context-store.js","sourceRoot":"","sources":["../src/context-store.ts"],"names":[],"mappings":"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"}
|
package/dist/docker.d.ts
ADDED
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { Containers } from './containers.ts';
|
|
2
|
+
import { type DockerContext, type Environment } from './context-store.ts';
|
|
3
|
+
import type * as EngineApi from './engine-api.ts';
|
|
4
|
+
import { Images } from './images.ts';
|
|
5
|
+
import { Networks } from './networks.ts';
|
|
6
|
+
import type { CancelOptions, Filters } from './options.ts';
|
|
7
|
+
import { Volumes } from './volumes.ts';
|
|
8
|
+
/** A context or a host, never both. */
|
|
9
|
+
export type ConnectOptions = CancelOptions & {
|
|
10
|
+
environment?: Environment;
|
|
11
|
+
} & ({
|
|
12
|
+
context?: string;
|
|
13
|
+
host?: never;
|
|
14
|
+
} | {
|
|
15
|
+
host?: string;
|
|
16
|
+
context?: never;
|
|
17
|
+
});
|
|
18
|
+
/** A client of one engine. Dispose it to close its connections. */
|
|
19
|
+
export declare class Docker implements AsyncDisposable {
|
|
20
|
+
#private;
|
|
21
|
+
/** The context that selected the engine: 'default' for DOCKER_HOST or a host option. */
|
|
22
|
+
readonly context: string;
|
|
23
|
+
readonly host: string;
|
|
24
|
+
readonly apiVersion: string;
|
|
25
|
+
/** Sends the Docker CLI to this engine: { DOCKER_HOST, DOCKER_CONTEXT: undefined }. */
|
|
26
|
+
readonly cliEnvironment: Readonly<Record<string, string | undefined>>;
|
|
27
|
+
readonly containers: Containers;
|
|
28
|
+
readonly volumes: Volumes;
|
|
29
|
+
readonly networks: Networks;
|
|
30
|
+
readonly images: Images;
|
|
31
|
+
private constructor();
|
|
32
|
+
/** Selects the engine in the order of the Docker CLI, pings it and negotiates the API version. */
|
|
33
|
+
static connect(options?: ConnectOptions): Promise<Docker>;
|
|
34
|
+
/** Each context of the context store, and the default context. */
|
|
35
|
+
static contexts(options?: {
|
|
36
|
+
environment?: Environment;
|
|
37
|
+
}): Promise<DockerContext[]>;
|
|
38
|
+
info(options?: CancelOptions): Promise<EngineApi.SystemInfo>;
|
|
39
|
+
/**
|
|
40
|
+
* The events of the engine as they happen, on a connection of their own.
|
|
41
|
+
* The iteration ends only when the signal aborts, and then it rejects with
|
|
42
|
+
* the reason of the signal.
|
|
43
|
+
*/
|
|
44
|
+
events(options?: CancelOptions & {
|
|
45
|
+
since?: number;
|
|
46
|
+
filters?: Filters;
|
|
47
|
+
}): AsyncIterable<EngineApi.EventMessage>;
|
|
48
|
+
/**
|
|
49
|
+
* Closes the connections of the client, also each attach, exec, followed
|
|
50
|
+
* logs and events: an iteration of one of them rejects with a DockerError.
|
|
51
|
+
* A request in flight, and each request after the disposal starts, rejects
|
|
52
|
+
* with the same DockerError. It resolves when each connection is closed;
|
|
53
|
+
* for an SSH engine, when each `ssh` process exited.
|
|
54
|
+
*/
|
|
55
|
+
[Symbol.asyncDispose](): Promise<void>;
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=docker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"docker.d.ts","sourceRoot":"","sources":["../src/docker.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,WAAW,EAGjB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,KAAK,SAAS,MAAM,iBAAiB,CAAC;AAGlD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAG3D,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAMvC,uCAAuC;AACvC,MAAM,MAAM,cAAc,GAAG,aAAa,GAAG;IAAE,WAAW,CAAC,EAAE,WAAW,CAAA;CAAE,GAAG,CACzE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,KAAK,CAAA;CAAE,GAAG;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,KAAK,CAAA;CAAE,CACxE,CAAC;AAEJ,mEAAmE;AACnE,qBAAa,MAAO,YAAW,eAAe;;IAC5C,wFAAwF;IACxF,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,uFAAuF;IACvF,QAAQ,CAAC,cAAc,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC;IACtE,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAGxB,OAAO;IAoBP,kGAAkG;WACrF,OAAO,CAAC,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,MAAM,CAAC;IA4BnE,kEAAkE;WACrD,QAAQ,CACnB,OAAO,GAAE;QAAE,WAAW,CAAC,EAAE,WAAW,CAAA;KAAO,GAC1C,OAAO,CAAC,aAAa,EAAE,CAAC;IAIrB,IAAI,CAAC,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC;IAItE;;;;OAIG;IACI,MAAM,CACX,OAAO,GAAE,aAAa,GAAG;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,OAAO,CAAA;KAAO,GAClE,aAAa,CAAC,SAAS,CAAC,YAAY,CAAC;IAWxC;;;;;;OAMG;IACG,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC;CAG7C"}
|
package/dist/docker.js
ADDED
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import { negotiateApiVersion } from "./api-version.js";
|
|
2
|
+
import { Containers } from "./containers.js";
|
|
3
|
+
import { listContexts, selectEngine, } from "./context-store.js";
|
|
4
|
+
import { EngineClient } from "./engine-client.js";
|
|
5
|
+
import { parseHost } from "./host.js";
|
|
6
|
+
import { Images } from "./images.js";
|
|
7
|
+
import { ndjson } from "./ndjson.js";
|
|
8
|
+
import { Networks } from "./networks.js";
|
|
9
|
+
import { SshTransport } from "./ssh-connection.js";
|
|
10
|
+
import { SocketTransport } from "./transport.js";
|
|
11
|
+
import { Volumes } from "./volumes.js";
|
|
12
|
+
function isEventMessage(value) {
|
|
13
|
+
return typeof value === 'object' && value !== null;
|
|
14
|
+
}
|
|
15
|
+
/** A client of one engine. Dispose it to close its connections. */
|
|
16
|
+
export class Docker {
|
|
17
|
+
/** The context that selected the engine: 'default' for DOCKER_HOST or a host option. */
|
|
18
|
+
context;
|
|
19
|
+
host;
|
|
20
|
+
apiVersion;
|
|
21
|
+
/** Sends the Docker CLI to this engine: { DOCKER_HOST, DOCKER_CONTEXT: undefined }. */
|
|
22
|
+
cliEnvironment;
|
|
23
|
+
containers;
|
|
24
|
+
volumes;
|
|
25
|
+
networks;
|
|
26
|
+
images;
|
|
27
|
+
#client;
|
|
28
|
+
constructor(context, host, apiVersion, client) {
|
|
29
|
+
this.context = context;
|
|
30
|
+
this.host = host;
|
|
31
|
+
this.apiVersion = apiVersion;
|
|
32
|
+
this.cliEnvironment = Object.freeze({
|
|
33
|
+
DOCKER_HOST: host,
|
|
34
|
+
DOCKER_CONTEXT: undefined,
|
|
35
|
+
});
|
|
36
|
+
this.#client = client;
|
|
37
|
+
this.images = new Images(client);
|
|
38
|
+
this.containers = new Containers(client, this.images);
|
|
39
|
+
this.volumes = new Volumes(client);
|
|
40
|
+
this.networks = new Networks(client);
|
|
41
|
+
}
|
|
42
|
+
/** Selects the engine in the order of the Docker CLI, pings it and negotiates the API version. */
|
|
43
|
+
static async connect(options = {}) {
|
|
44
|
+
const { signal } = options;
|
|
45
|
+
const engine = await selectEngine(options);
|
|
46
|
+
const parsed = parseHost(engine.host);
|
|
47
|
+
const transport = parsed.kind === 'ssh'
|
|
48
|
+
? new SshTransport(parsed.url)
|
|
49
|
+
: new SocketTransport(parsed.kind, parsed.socketPath);
|
|
50
|
+
try {
|
|
51
|
+
const unversioned = new EngineClient(engine.host, transport);
|
|
52
|
+
const ping = await unversioned.request('GET', '/_ping', { signal });
|
|
53
|
+
const engineVersion = ping.headers['api-version'];
|
|
54
|
+
const apiVersion = negotiateApiVersion(engine.host, typeof engineVersion === 'string' ? engineVersion : '');
|
|
55
|
+
return new Docker(engine.context, engine.host, apiVersion, unversioned.versioned(apiVersion));
|
|
56
|
+
}
|
|
57
|
+
catch (error) {
|
|
58
|
+
await transport.close();
|
|
59
|
+
throw error;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
/** Each context of the context store, and the default context. */
|
|
63
|
+
static async contexts(options = {}) {
|
|
64
|
+
return listContexts(options.environment);
|
|
65
|
+
}
|
|
66
|
+
async info(options = {}) {
|
|
67
|
+
return this.#client.json('GET', '/info', options);
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* The events of the engine as they happen, on a connection of their own.
|
|
71
|
+
* The iteration ends only when the signal aborts, and then it rejects with
|
|
72
|
+
* the reason of the signal.
|
|
73
|
+
*/
|
|
74
|
+
async *events(options = {}) {
|
|
75
|
+
const { since, filters, signal } = options;
|
|
76
|
+
const response = await this.#client.stream('GET', '/events', {
|
|
77
|
+
query: { since, filters },
|
|
78
|
+
signal,
|
|
79
|
+
});
|
|
80
|
+
for await (const event of ndjson(response)) {
|
|
81
|
+
if (isEventMessage(event))
|
|
82
|
+
yield event;
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Closes the connections of the client, also each attach, exec, followed
|
|
87
|
+
* logs and events: an iteration of one of them rejects with a DockerError.
|
|
88
|
+
* A request in flight, and each request after the disposal starts, rejects
|
|
89
|
+
* with the same DockerError. It resolves when each connection is closed;
|
|
90
|
+
* for an SSH engine, when each `ssh` process exited.
|
|
91
|
+
*/
|
|
92
|
+
async [Symbol.asyncDispose]() {
|
|
93
|
+
await this.#client.close();
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
//# sourceMappingURL=docker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"docker.js","sourceRoot":"","sources":["../src/docker.ts"],"names":[],"mappings":"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"}
|