testcontainers / testcontainers/testcontainers-java
[Bug]: Container startup failed for image docker/compose:1.29.2 - Status 500 unexpected EOF
Aperta
Nessuno ha ancora preso questa issue.
type/bug
- Lingua principale
- Java
- Stelle
- 8.7k
- Fork
- 1.9k
- Merge medio
- 2g 17h
- PR unite (30g)
- 9
Descrizione
Module
Core
Testcontainers version
1.20.1
Using the latest Testcontainers version?
Yes
Host OS
Mac OS
Host Arch
x86 Intel
Docker version
docker version
Client:
Cloud integration: v1.0.35+desktop.5
Version: 24.0.7
API version: 1.43
Go version: go1.20.10
Git commit: afdd53b
Built: Thu Oct 26 09:04:20 2023
OS/Arch: darwin/amd64
Context: desktop-linux
Server: Docker Desktop 4.26.1 (131620)
Engine:
Version: 24.0.7
API version: 1.43 (minimum version 1.12)
Go version: go1.20.10
Git commit: 311b9ff
Built: Thu Oct 26 09:08:02 2023
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.6.25
GitCommit: d8f198a4ed8892c764191ef7b3b06d8a2eeb5c7f
runc:
Version: 1.1.10
GitCommit: v1.1.10-0-g18a0cb0
docker-init:
Version: 0.19.0
GitCommit: de40ad0
### What happened?
When running integration tests I get the following.
We have 4 other repos with similar structure and do not get this - but reproducible on Mac and Linux (Github action)
### Relevant log output
```shell
Moved from 1.18.0 (where it worked) to 1.20.1 (where I got the following)
Caused by:
org.testcontainers.containers.ContainerLaunchException: Container startup failed for image docker/compose:1.29.2
at app//org.testcontainers.containers.GenericContainer.doStart(GenericContainer.java:359)
at app//org.testcontainers.containers.GenericContainer.start(GenericContainer.java:330)
at app//org.testcontainers.containers.ContainerisedDockerCompose.invoke(ContainerisedDockerCompose.java:84)
at app//org.testcontainers.containers.ComposeDelegate.runWithCompose(ComposeDelegate.java:241)
at app//org.testcontainers.containers.ComposeDelegate.createServices(ComposeDelegate.java:163)
at app//org.testcontainers.containers.DockerComposeContainer.start(DockerComposeContainer.java:139)
at app//com.cogito.platform.mapping.AbstractIntegrationTest.<clinit>(AbstractIntegrationTest.java:92)
... 103 more
Caused by:
org.rnorth.ducttape.RetryCountExceededException: Retry limit hit with exception
at app//org.rnorth.ducttape.unreliables.Unreliables.retryUntilSuccess(Unreliables.java:88)
at app//org.testcontainers.containers.GenericContainer.doStart(GenericContainer.java:344)
... 109 more
Caused by:
org.testcontainers.containers.ContainerLaunchException: Could not create/start container
at app//org.testcontainers.containers.GenericContainer.tryStart(GenericContainer.java:563)
at app//org.testcontainers.containers.GenericContainer.lambda$doStart$0(GenericContainer.java:354)
at app//org.rnorth.ducttape.unreliables.Unreliables.retryUntilSuccess(Unreliables.java:81)
... 110 more
Caused by:
com.github.dockerjava.api.exception.InternalServerErrorException: Status 500: {"message":"unexpected EOF"}
at app//org.testcontainers.shaded.com.github.dockerjava.core.DefaultInvocationBuilder.execute(DefaultInvocationBuilder.java:247)
at app//org.testcontainers.shaded.com.github.dockerjava.core.DefaultInvocationBuilder.put(DefaultInvocationBuilder.java:223)
at app//org.testcontainers.shaded.com.github.dockerjava.core.exec.CopyArchiveToContainerCmdExec.execute(CopyArchiveToContainerCmdExec.java:34)
at app//org.testcontainers.shaded.com.github.dockerjava.core.exec.CopyArchiveToContainerCmdExec.execute(CopyArchiveToContainerCmdExec.java:13)
at app//org.testcontainers.shaded.com.github.dockerjava.core.exec.AbstrSyncDockerCmdExec.exec(AbstrSyncDockerCmdExec.java:21)
at app//org.testcontainers.shaded.com.github.dockerjava.core.command.AbstrDockerCmd.exec(AbstrDockerCmd.java:33)
at app//org.testcontainers.shaded.com.github.dockerjava.core.command.CopyArchiveToContainerCmdImpl.exec(CopyArchiveToContainerCmdImpl.java:162)
at app//org.testcontainers.containers.ContainerState.copyFileToContainer(ContainerState.java:370)
at app//org.testcontainers.containers.ContainerState.copyFileToContainer(ContainerState.java:331)
at java.base@17.0.9/java.util.LinkedHashMap.forEach(LinkedHashMap.java:721)
at app//org.testcontainers.containers.GenericContainer.tryStart(GenericContainer.java:441)
### Additional Information
_No response_
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Inizia con GenericContainer.tryStart e ContainerState.copyFileToContainer nello stack trace, quindi riproduci il fallimento usando docker/compose:1.29.2 con Testcontainers 1.20.1 e confrontalo con 1.18.0. Traccia la richiesta di copia dell’archivio Docker che restituisce unexpected EOF; il lavoro è completato quando i test di integrazione interessati avviano correttamente il container Compose negli ambienti segnalati.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- docker, docker-compose, java
- Ambito
- testing
- Tipo di issue
- Bug
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Stato di attività
- Ferma
- Chiarezza
- Da chiarire
- Idoneità per principianti
- 25/100