testcontainers / testcontainers/testcontainers-java

Unable to run Testcontainers on Windows Server 2019 (LinuxKit installed, LCOW)

Open
#2,960 23 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

client/docker-for-windows help wanted os/windows resolution/acknowledged
Dominant language
Java
Stars
8.7k
Forks
1.9k
Avg merge
2d 17h
Merged PRs (30d)
9

Description

Unable to run containers from testcontainer in Windows Server 2019 (LinuxKit installed). This link https://www.testcontainers.org/supported_docker_environment/ mentions that LCOW is supported. Able to run a linux container without any issue from Docker CLI.

Facing issues only when tried to run a container from testcontainer.

Error logs as below:

2020-07-01 20:12:59.342 ERROR 4936 --- [           main] o.t.d.DockerClientProviderStrategy       : Could not find a valid Docker environment. Please check configuration. Attempted configurations were:
2020-07-01 20:12:59.342 ERROR 4936 --- [           main] o.t.d.DockerClientProviderStrategy       :     NpipeSocketClientProviderStrategy: failed with exception InvalidConfigurationException (ping failed). Root cause TimeoutException (null)
2020-07-01 20:12:59.342 ERROR 4936 --- [           main] o.t.d.DockerClientProviderStrategy       :     WindowsClientProviderStrategy: failed with exception TimeoutException (org.rnorth.ducttape.TimeoutException: java.util.concurrent.TimeoutException). Root cause TimeoutException (null)
2020-07-01 20:12:59.342 ERROR 4936 --- [           main] o.t.d.DockerClientProviderStrategy       : As no valid configuration was found, execution cannot continue

Docker Info as below:

Client:
Debug Mode: false
Plugins:
cluster: Manage Docker clusters (Docker Inc., v1.2.0)
Server:
Containers: 4
Running: 1
Paused: 0
Stopped: 3
Images: 6
Server Version: 19.03.5
Storage Driver: windowsfilter (windows) lcow (linux)
Windows:
LCOW:
Logging Driver: json-file
Plugins:
Volume: local
Network: ics internal l2bridge l2tunnel nat null overlay private transparent
Log: awslogs etwlogs fluentd gcplogs gelf json-file local logentries splunk syslog
Swarm: inactive
Default Isolation: process
Kernel Version: 10.0 17763 (17763.1.amd64fre.rs5_release.180914-1434)
Operating System: Windows Server 2019 Standard Version 1809 (OS Build 17763.1294)
OSType: windows
Architecture: x86_64
CPUs: 4
Total Memory: 16GiB
Name: DHUBAS204
ID: ZWHK:7HAM:2IKC:YTDS:RD7L:P2V6:6ECL:A2I3:X6T2:2N33:3KSQ:ZX24
Docker Root Dir: C:\ProgramData\docker
Debug Mode: true
File Descriptors: -1
Goroutines: 31
System Time: 2020-07-01T14:00:30.2657542+10:00
EventsListeners: 0
Registry: https://index.docker.io/v1/
Labels:
Experimental: true
Insecure Registries:
registry-1.docker.io
127.0.0.0/8
Registry Mirrors:
Live Restore Enabled: false

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with DockerClientProviderStrategy and reproduce the failure on Windows Server 2019 with LCOW enabled. Compare the NpipeSocketClientProviderStrategy and WindowsClientProviderStrategy failures against the Docker CLI environment. Done means Testcontainers detects a valid Docker environment and can start a Linux container.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker, java
Domain
devops, infrastructure, testing
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.