Skip to content

Latest commit

 

History

History
71 lines (52 loc) · 1.46 KB

File metadata and controls

71 lines (52 loc) · 1.46 KB

Images

Building an image

Build and start your own Docker image:

const { GenericContainer } = require("testcontainers");

const container = await GenericContainer
  .fromDockerfile("/path/to/build-context")
  .build();

const startedContainer = await container.start();

With a pull policy

Testcontainers will automatically pull an image if it doesn't exist. This is configurable:

const { GenericContainer, PullPolicy } = require("testcontainers");

const container = await GenericContainer
  .fromDockerfile("/path/to/build-context")
  .withPullPolicy(PullPolicy.alwaysPull())
  .build();

Custom pull policy

const { GenericContainer, ImagePullPolicy } = require("testcontainers");

class CustomPullPolicy implements ImagePullPolicy {
  public shouldPull(): boolean {
    return true;
  }
}

const container = await GenericContainer
  .fromDockerfile("/path/to/build-context")
  .withPullPolicy(new CustomPullPolicy())
  .build();

With build arguments

const container = await GenericContainer
  .fromDockerfile("/path/to/build-context")
  .withBuildArgs({ ARG: "VALUE" })
  .build();

With custom Dockerfile

const container = await GenericContainer
  .fromDockerfile("/path/to/build-context", "my-dockerfile")
  .build();

Without cache

const container = await GenericContainer
  .fromDockerfile("/path/to/build-context")
  .withCache(false)
  .build();