testcontainers / testcontainers/testcontainers-java

[Containerd] IN_A_CONTAINER didn't set correctly in containers started up via containerd service

Offen
#4,398 7 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Vorherrschende Sprache
Java
Sterne
8.7k
Forks
1.9k
Ø Merge
2 T. 17 Std.
Gemergte PRs (30 T.)
9

Beschreibung

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.

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne damit, die Deklaration von IN_A_CONTAINER und den Code zu finden, der eine Verbindung zu Ryuk herstellt. Reproduziere den localhost-Verbindungsfehler, wenn Container über containerd gestartet werden, und prüfe anschließend vorhandene Tests für Container-Runtimes, falls verfügbar. Fertig ist die Aufgabe, wenn von containerd gestartete Container ihre Umgebung korrekt erkennen und die Verbindung zu Ryuk erfolgreich hergestellt wird.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
docker, java
Bereich
devops, testing-qa
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.