View Source Testcontainers.PostgresContainer (testcontainers v1.11.7)

Provides functionality for creating and managing Postgres container configurations.

Summary

Functions

Returns the connection parameters to connect to the database from the host machine.

Retrieves the default Docker image for the Postgres container.

Retrieves the default Docker image including tag for the Postgres container.

Retrieves the default exposed port for the Postgres container.

Creates a new PostgresContainer struct with default configurations.

Returns the port on the host machine where the Postgres container is listening.

Set the regular expression to check the image validity.

Overrides the default database used for the Postgres container.

Overrides the default image used for the Postgres container.

Overrides the default password used for the Postgres container.

Overrides the default port used for the Postgres container.

Set the reuse flag to reuse the container if it is already running.

Overrides the default user used for the Postgres container.

Overrides the default wait timeout used for the Postgres container.

Functions

connection_parameters(container)

Returns the connection parameters to connect to the database from the host machine.

default_image()

Retrieves the default Docker image for the Postgres container.

default_image_with_tag()

Retrieves the default Docker image including tag for the Postgres container.

default_port()

Retrieves the default exposed port for the Postgres container.

new()

Creates a new PostgresContainer struct with default configurations.

port(container)

Returns the port on the host machine where the Postgres container is listening.

with_check_image(config, check_image)

Set the regular expression to check the image validity.

with_database(config, database)

Overrides the default database used for the Postgres container.

Examples

iex> config = PostgresContainer.new()
iex> new_config = PostgresContainer.with_database(config, "another-database")
iex> new_config.database
"another-database"

with_image(config, image)

Overrides the default image used for the Postgres container.

Examples

iex> config = PostgresContainer.new()
iex> new_config = PostgresContainer.with_image(config, "postgres:12")
iex> new_config.image
"postgres:12"

with_password(config, password)

Overrides the default password used for the Postgres container.

Examples

iex> config = PostgresContainer.new()
iex> new_config = PostgresContainer.with_password(config, "another-password")
iex> new_config.password
"another-password"

with_persistent_volume(config, persistent_volume)

Callback implementation for Testcontainers.DatabaseBehaviour.with_persistent_volume/2.

with_port(config, port)

Overrides the default port used for the Postgres container.

Note: this will not change what port the docker container is listening to internally.

Examples

iex> config = PostgresContainer.new()
iex> new_config = PostgresContainer.with_port(config, 2345)
iex> new_config.port
2345

with_reuse(config, reuse)

Set the reuse flag to reuse the container if it is already running.

with_user(config, user)

Overrides the default user used for the Postgres container.

Examples

iex> config = PostgresContainer.new()
iex> new_config = PostgresContainer.with_user(config, "another-user")
iex> new_config.user
"another-user"

with_wait_timeout(config, wait_timeout)

Overrides the default wait timeout used for the Postgres container.

Note: this timeout will be used for each individual wait strategy.

Examples

iex> config = PostgresContainer.new()
iex> new_config = PostgresContainer.with_wait_timeout(config, 8000)
iex> new_config.wait_timeout
8000