testcontainers / testcontainers/testcontainers-java
[Containerd] IN_A_CONTAINER didn't set correctly in containers started up via containerd service
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- Java
- Estrellas
- 8.7k
- Forks
- 1.9k
- Merge medio
- 2 d 17 h
- PR fusionados (30 d)
- 9
Descripción
public static final boolean IN_A_CONTAINER = new File("/.dockerenv").exists();
testcontainers use '/.dockerenv' to decide if IN_A_CONTAINER is true or false.
But in the containers started by containerd, '/.dockerenv' does not exist, and it will lead to testcontainers to connect ryuk via localhost, and ryuk will failed to be connected.
Errors from maven log as below:
java.lang.IllegalStateException: Could not connect to Ryuk at localhost:49175
And the latest testcontainers 1.1.6.0 is used here.
Look forward to fixing for this.
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
Comienza localizando la declaración de IN_A_CONTAINER y el código que se conecta a Ryuk. Reproduce el fallo de conexión a localhost cuando los contenedores se inician mediante containerd y, después, inspecciona las pruebas existentes de container-runtime si están disponibles. La tarea estará terminada cuando los contenedores iniciados por containerd detecten correctamente su entorno y la conexión con Ryuk tenga éxito.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- docker, java
- Área
- devops, testing-qa
- Tipo de issue
- Error
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 35/100