General Docker requirements
|Host Operating System / Environment||Minimum recommended docker versions||Known issues / tips|
|Linux - general||Docker v1.10|
|Linux - Travis CI||Docker v1.10||See example .travis.yml for baseline Travis CI configuration|
|Linux - Circle CI (LXC driver)||Docker v1.9.1||The
|Linux - within a Docker container||Docker v1.12||See Running inside Docker for Docker-in-Docker and Docker wormhole patterns|
|Mac OS X - Docker Toolbox||Docker Machine v0.8.0|
|Mac OS X - Docker for Mac||1.12.0||Support is best-efforts at present.
|Windows - Docker Toolbox||Support is limited at present and this is not currently tested on a regular basis.|
|Windows - Docker for Windows||Support is best-efforts at present. Only Linux Containers (LCOW) are supported at the moment. See Windows Support|
|Windows - Windows Subsystem for Linux (WSL)||Docker v17.06||Support is best-efforts at present. Only Linux Containers (LCOW) are supported at the moment. See Windows Support.|
Docker environment discovery
Testcontainers will try to connect to a Docker daemon using the following strategies in order:
- Environment variables:
- If Docker Machine is installed, the docker machine environment for the first machine found. Docker Machine needs to be on the PATH for this to succeed.
- If you're going to run your tests inside a container, please read Patterns for running tests inside a docker container first.