Skip to main content

DockerContainersDataSource

Defined in: src/dapi.ts:1035

Functionality to work with Docker containers. See help: https://datagrok.ai/help/develop/how-to/docker_containers.

Extends

Constructors

Constructor

new DockerContainersDataSource(s): DockerContainersDataSource

Defined in: src/dapi.ts:1036

Parameters

ParameterType
sany

Returns

DockerContainersDataSource

Overrides

HttpDataSource.constructor

Properties

PropertyTypeInherited fromDefined in
clsNamestringHttpDataSource.clsNamesrc/dapi.ts:246
dartanyHttpDataSource.dartsrc/dapi.ts:245

Methods

allPackageVersions()

allPackageVersions(): HttpDataSource<DockerContainer>

Defined in: src/dapi.ts:301

Turns off package versions isolation. This DataSource will return all entities in all versions, not only the current one *

Returns

HttpDataSource<DockerContainer>

Inherited from

HttpDataSource.allPackageVersions


by()

by(i): HttpDataSource<DockerContainer>

Defined in: src/dapi.ts:306

Parameters

ParameterType
inumber

Returns

HttpDataSource<DockerContainer>

Inherited from

HttpDataSource.by


count()

count(): Promise<number>

Defined in: src/dapi.ts:272

Counts entities that satisfy the filtering criteria (see filter). See examples: https://public.datagrok.ai/js/samples/dapi/projects-list Smart filter: https://datagrok.ai/help/datagrok/smart-search

Returns

Promise<number>

Inherited from

HttpDataSource.count


delete()

delete(e): Promise<void>

Defined in: src/dapi.ts:296

Deletes an entity.

Parameters

ParameterType
eEntity

Returns

Promise<void>

Inherited from

HttpDataSource.delete


fetchProxy()

fetchProxy(containerId, path, params?): Promise<Response>

Defined in: src/dapi.ts:1073

Proxies URL requests to Docker containers via Datagrok server with the same interface as fetch. Returns response from the containers as it is. If an error occurs on the server side returns a response with "application/json" Content-Type and JSON body with field "datagrok-error" that describes the cause. If container status is incorrect for performing requests returns a response with a 400 status code. If something goes wrong in the server workflow, it returns a response with a 500 status code. Any other cases are the result of direct requests to the container itself.

Parameters

ParameterTypeDescription
containerIdstringID of the DockerContainer to which the http request should be sent.
pathstringURI without scheme and authority component.
params?RequestInitparameters of the request.

Returns

Promise<Response>


filter()

filter(w): HttpDataSource<DockerContainer>

Defined in: src/dapi.ts:329

Applies filter to current request. Also can be set with list method "options" parameter See example: https://public.datagrok.ai/js/samples/dapi/projects-list Smart filter: https://datagrok.ai/help/datagrok/navigation/views/browse#entity-search

Parameters

ParameterType
wstring

Returns

HttpDataSource<DockerContainer>

Inherited from

HttpDataSource.filter


find()

find(id): Promise<DockerContainer>

Defined in: src/dapi.ts:286

Returns an entity with the specified id. Throws an exception if an entity does not exist, or is not accessible in the current context. Sample: https://public.datagrok.ai/js/samples/data-access/save-and-load-df

Parameters

ParameterTypeDescription
idstringGUID of the corresponding object

Returns

Promise<DockerContainer>

{Promise<object>} - entity.

Inherited from

HttpDataSource.find


first()

first(): Promise<DockerContainer>

Defined in: src/dapi.ts:277

Returns fist entity that satisfies the filtering criteria (see filter).

Returns

Promise<DockerContainer>

Inherited from

HttpDataSource.first


getContainerLogs()

getContainerLogs(containerId, limit?): Promise<string | null>

Defined in: src/dapi.ts:1194

Returns container's logs or throws Exception with the cause.

Parameters

ParameterTypeDefault valueDescription
containerIdstringundefinedID of the DockerContainer whose logs is to be obtained.
limitnumber10000maximum line count of logs.

Returns

Promise<string | null>

string - container logs or null if there are no logs.


include()

include(include): HttpDataSource<DockerContainer>

Defined in: src/dapi.ts:341

Includes entity in the result

Parameters

ParameterType
includestring

Returns

HttpDataSource<DockerContainer>

Inherited from

HttpDataSource.include


list()

list(options?): Promise<DockerContainer[]>

Defined in: src/dapi.ts:257

Returns all entities that satisfy the filtering criteria (see filter). See examples: https://public.datagrok.ai/js/samples/dapi/projects-list Smart filter: https://datagrok.ai/help/datagrok/smart-search

Parameters

ParameterType
options{ filter?: string; order?: string; pageNumber?: number; pageSize?: number; }
options.filter?string
options.order?string
options.pageNumber?number
options.pageSize?number

Returns

Promise<DockerContainer[]>

Inherited from

HttpDataSource.list


nextPage()

nextPage(): HttpDataSource<DockerContainer>

Defined in: src/dapi.ts:320

Returns next page of all entities that satisfy the filtering criteria (see filter). Works only if pageSize was set during previous list() call See examples: https://public.datagrok.ai/js/samples/dapi/projects-list

Returns

HttpDataSource<DockerContainer>

Inherited from

HttpDataSource.nextPage


order()

order(fieldName, desc?): HttpDataSource<DockerContainer>

Defined in: src/dapi.ts:335

Instructs data source to return results in the specified order.

Parameters

ParameterTypeDefault value
fieldNamestringundefined
descbooleanfalse

Returns

HttpDataSource<DockerContainer>

Inherited from

HttpDataSource.order


page()

page(i): HttpDataSource<DockerContainer>

Defined in: src/dapi.ts:312

Restricts results to the specified page number. See also nextPage.

Parameters

ParameterType
inumber

Returns

HttpDataSource<DockerContainer>

Inherited from

HttpDataSource.page


run()

run(containerId, awaitStart?): Promise<void>

Defined in: src/dapi.ts:1047

Runs container.

Parameters

ParameterTypeDefault valueDescription
containerIdstringundefinedID of the DockerContainer to be run.
awaitStartbooleanfalseif [true] promise will not be resolved until the container is started, otherwise, it doesn't wait for start and resolves immediately after the container is queued for start.

Returns

Promise<void>

  • promise that resolves with void or throws Exception if something went wrong.

save()

save(e): Promise<DockerContainer>

Defined in: src/dapi.ts:291

Saves an entity.

Parameters

ParameterType
eEntity

Returns

Promise<DockerContainer>

Inherited from

HttpDataSource.save


stop()

stop(containerId, awaitStop?): Promise<void>

Defined in: src/dapi.ts:1058

Stops container.

Parameters

ParameterTypeDefault valueDescription
containerIdstringundefinedID of the DockerContainer to be stopped.
awaitStopbooleanfalseif [true] promise will not be resolved until the container is stopped, otherwise, it doesn't wait for a stop and resolves immediately after the container is queued for a stop.

Returns

Promise<void>

or throws Exception if something went wrong.


webSocketProxy()

webSocketProxy(containerId, path, timeout?): Promise<WebSocket>

Defined in: src/dapi.ts:1090

Proxies WebSocket connection to Docker containers via Datagrok server. Returns ready WebSocket that is connected through the server to the Docker container WebSocket endpoint. If container status is incorrect or there is error while establishing WebSocket connection to Docker container, caller will receive an error. After the WebSocket is returned, caller can do anything with it and should take care of reconnection. After the caller closes the connection, server will close proxied Docker WebSocket connection.

Parameters

ParameterTypeDefault valueDescription
containerIdstringundefinedID of the DockerContainer to which the WebSocket connection will be established.
pathstringundefinedURI without scheme and authority component that points to endpoint inside the Docker container
timeoutnumber60000Timeout in ms for initial connection establishment. Set it to higher values if you are using container with on_demand configuration set to true.

Returns

Promise<WebSocket>


webSocketProxySync()

webSocketProxySync(containerId, path, timeout?): WebSocket

Defined in: src/dapi.ts:1145

This is the synchronous version of the function webSocketProxy. Note that the container won't be ready to accept messages immediately after this function returns. If your application logic requires sending a message right away, consider using the asynchronous version.

Parameters

ParameterTypeDefault valueDescription
containerIdstringundefinedID of the DockerContainer to which the WebSocket connection will be established.
pathstringundefinedURI without scheme and authority component that points to endpoint inside the Docker container
timeoutnumber60000Timeout in ms for initial connection establishment. Set it to higher values if you are using container with on_demand configuration set to true.

Returns

WebSocket