Modules
Public API for TestcontainerEx.
Application callback for TestcontainerEx.
Provides functionality for creating and managing Cassandra container configurations.
Provides functionality for creating and managing Ceph container configurations.
Considers a container ready as soon as a command runs successfully inside it.
Subprocess wrapper for Docker Compose CLI interaction.
Represents the started state of a Docker Compose environment.
A lightweight struct representing a service within a Docker Compose environment.
Builds a Tesla client connected to the container engine.
Orchestrates host resolution strategies in priority order.
TLS/SSL option building for container engine connections.
Protocol for resolving the container engine host URL.
Resolves the container engine host from the CONTAINER_HOST environment variable.
Resolves the container engine host from a .env file in the project root.
Resolves the container engine host from the DOCKER_HOST environment variable.
Resolves the container engine host by evaluating minikube docker-env.
Resolves the container engine host from .testcontainer_ex.properties.
Resolves the container engine host by scanning well-known Unix socket paths.
URL construction and TLS detection for container engine connections.
Library metadata constants.
Convenience module for container configuration.
Protocol for building container configurations from domain-specific container types (e.g. RedisContainer, PostgresContainer).
Applies common labels and reuse logic to container configurations.
Container configuration struct and builder functions.
Orchestrates container lifecycle: create, start, wait, pull, copy.
Convenience module for building container configurations.
A behaviour implemented by database containers used by TestcontainerEx.Ecto
Internal Docker API client. All functions require a Tesla connection.
Resolves Docker registry credentials from the user's Docker config file
(typically ~/.docker/config.json) and returns a ready-to-send
X-Registry-Auth header value.
Detects which container engine is in use: Docker, Podman, or minikube.
A struct with builder functions for creating a Docker Compose configuration.
Public alias for TestcontainerEx.Connection.Url.
Provides functionality for creating and managing EMQX container configurations.
Convenient macros to run containers within ExUnit tests.
Considers the container as ready when a http request is successful.
Provides functionality for creating and managing Kafka container configurations.
Considers the container as ready as soon as a specific log message is detected in the container's log stream.
Provides functionality for creating and managing Minio container configurations.
Provides functionality for creating and managing Ministack container configurations.
Provides functionality for creating and managing Mongo container configurations.
Provides functionality for creating and managing MySQL container configurations.
Docker network operations.
Considers the container as ready when it successfully accepts connections on the specified port.
Provides functionality for creating and managing Postgres container configurations.
Pull policies that control whether an image is fetched from a remote registry before starting a container.
Provides functionality for creating and managing RabbitMQ container configurations.
Provides functionality for creating and managing Redis container configurations.
Manages the Ryuk reaper container for automatic cleanup of test containers.
Work in progress. Not stable for use yet.
GenServer that manages the TestcontainerEx lifecycle.
Provides functionality for creating and managing Toxiproxy container configurations.
Library metadata constants.
Defines the protocol/interface for the wait strategies in TestcontainerEx
Mix Tasks
Usage: mix testcontainer_ex.run [sub_task] [--database DB] [--db-volume VOLUME] [sub_task_args...]