Skip to main content

@terascope/docker-compose-js / Compose

Class: Compose

Defined in: index.ts:36

Wrapper around docker compose (with fallback to docker-compose) for programmatically managing Docker Compose services.

Accepts one or more compose files. When multiple files are provided they are passed to the CLI with repeated -f flags, which causes docker-compose to merge them in order — later files override earlier ones. This is useful for conditionally applying overrides (e.g. a logs-volume override) without modifying the base compose file.

Examples

// Single file
const compose = new Compose('docker-compose.yml');
// Base + conditional override
// docker-compose.logs.yml adds a ./logs volume mount to teraslice-master
// and teraslice-worker so file-based log output is captured on the host.
const files = ['docker-compose.yml'];
if (FILE_LOGGING) files.push('docker-compose.logs.yml');
const compose = new Compose(files);

See

https://docs.docker.com/compose/how-tos/multiple-compose-files/merge/

Constructors

Constructor

new Compose(composeFile): Compose

Defined in: index.ts:38

Parameters

ParameterType
composeFilestring | string[]

Returns

Compose

Properties

PropertyTypeDefined in
composeFilesstring[]index.ts:37

Methods

build()

build(options?): Promise<string>

Defined in: index.ts:140

Parameters

ParameterType
options?RunOptions

Returns

Promise<string>


create()

create(services?, options?): Promise<string>

Defined in: index.ts:172

Parameters

ParameterType
services?Services
options?RunOptions

Returns

Promise<string>


down()

down(options?): Promise<string>

Defined in: index.ts:144

Parameters

ParameterType
options?RunOptions

Returns

Promise<string>


kill()

kill(services?, options?): Promise<string>

Defined in: index.ts:164

Parameters

ParameterType
services?Services
options?RunOptions

Returns

Promise<string>


pause()

pause(services?, options?): Promise<string>

Defined in: index.ts:180

Parameters

ParameterType
services?Services
options?RunOptions

Returns

Promise<string>


port()

port(service, privatePort, options?): Promise<string>

Defined in: index.ts:196

Parameters

ParameterType
servicestring
privatePortstring | number
options?RunOptions

Returns

Promise<string>


ps()

ps(options?): Promise<string>

Defined in: index.ts:148

Parameters

ParameterType
options?RunOptions

Returns

Promise<string>


pull()

pull(services?, options?): Promise<string>

Defined in: index.ts:168

Parameters

ParameterType
services?Services
options?RunOptions

Returns

Promise<string>


restart()

restart(services?, options?): Promise<string>

Defined in: index.ts:160

Parameters

ParameterType
services?Services
options?RunOptions

Returns

Promise<string>


rm()

rm(services?, options?): Promise<string>

Defined in: index.ts:192

Parameters

ParameterType
services?Services
options?RunOptions

Returns

Promise<string>


runCmd()

runCmd(command, options?, services?, ...extraParams): Promise<string>

Defined in: index.ts:42

Parameters

ParameterType
commandstring
options?RunOptions
services?Services
...extraParams?Arg[]

Returns

Promise<string>


scale()

scale(services?, options?): Promise<string>

Defined in: index.ts:188

Parameters

ParameterType
services?Services
options?RunOptions

Returns

Promise<string>


start()

start(services?, options?): Promise<string>

Defined in: index.ts:152

Parameters

ParameterType
services?Services
options?RunOptions

Returns

Promise<string>


stop()

stop(services?, options?): Promise<string>

Defined in: index.ts:156

Parameters

ParameterType
services?Services
options?RunOptions

Returns

Promise<string>


unpause()

unpause(services?, options?): Promise<string>

Defined in: index.ts:184

Parameters

ParameterType
services?Services
options?RunOptions

Returns

Promise<string>


up()

up(options, services?): Promise<string>

Defined in: index.ts:135

Parameters

ParameterType
optionsRunOptions
services?string | string[]

Returns

Promise<string>


version()

version(options?): Promise<string>

Defined in: index.ts:176

Parameters

ParameterType
options?RunOptions

Returns

Promise<string>