Skip to content
Menu
Desktop
NEW
Cloud
Getting Started
Guides
Modules
Docs
Testcontainers for Java
Testcontainers for Go
Testcontainers for .NET
Testcontainers for Node.js
Testcontainers for Python
Testcontainers for Rust
Testcontainers for Haskell
Testcontainers for Ruby
Slack
GitHub
Testcontainers for Java
Initializing search
testcontainers-java
Content
testcontainers-java
Home
Quickstart
Quickstart
JUnit 4 Quickstart
JUnit 5 Quickstart
Spock Quickstart
Features
Features
Creating a container
Networking and communicating with containers
Executing commands
Files and volumes
Waiting for containers to start or be ready
Accessing container logs
Creating images on-the-fly
Using Jib
Custom configuration
Image name substitution
Advanced options
Reusable Containers (Experimental)
Modules
Modules
Databases
Databases
Database containers
JDBC support
R2DBC support
Cassandra Module
CockroachDB Module
Couchbase Module
Clickhouse Module
CrateDB Module
Databend Module
DB2 Module
InfluxDB Module
MariaDB Module
MongoDB Module
MS SQL Server Module
MySQL Module
Neo4j Module
OceanBase Module
Oracle Database Free Module
Oracle-XE Module
OrientDB Module
Postgres Module
Presto Module
QuestDB Module
ScyllaDB
TiDB Module
Timeplus Module
Trino Module
YugabyteDB Module
ActiveMQ
Azure Module
ChromaDB
Hashicorp Consul Module
Hashicorp Consul Module
Table of contents
Usage example
Why Consul in Junit tests?
Adding this module to your project dependencies
Docker Compose Module
Docker MCP Gateway
Docker Model Runner
Elasticsearch container
GCloud Module
Grafana
HiveMQ Module
K3s Module
k6 Module
Kafka Module
LDAP
LocalStack Module
Milvus
MinIO Containers
Mockserver Module