Skip to content

Kafka Testcontainer: NullPointerException cgroupv2Β #911

@resilica

Description

@resilica

Expected Behaviour
It works

Actual Behaviour
It crashes

Testcontainer Logs

2025-02-23 12:31:39 Waiting for script...
2025-02-23 12:31:40 ===> User
2025-02-23 12:31:40 uid=1000(appuser) gid=1000(appuser) groups=1000(appuser)
2025-02-23 12:31:40 ===> Configuring ...
2025-02-23 12:31:42 java.lang.NullPointerException
2025-02-23 12:31:42     at java.base/jdk.internal.platform.cgroupv2.CgroupV2Subsystem.getInstance(CgroupV2Subsystem.java:81)
2025-02-23 12:31:42     at java.base/jdk.internal.platform.CgroupSubsystemFactory.create(CgroupSubsystemFactory.java:113)
2025-02-23 12:31:42     at java.base/jdk.internal.platform.CgroupMetrics.getInstance(CgroupMetrics.java:167)
2025-02-23 12:31:42     at java.base/jdk.internal.platform.SystemMetrics.instance(SystemMetrics.java:29)
2025-02-23 12:31:42     at java.base/jdk.internal.platform.Metrics.systemMetrics(Metrics.java:58)
2025-02-23 12:31:42     at java.base/jdk.internal.platform.Container.metrics(Container.java:43)
2025-02-23 12:31:42     at jdk.management/com.sun.management.internal.OperatingSystemImpl.<init>(OperatingSystemImpl.java:182)
2025-02-23 12:31:42     at jdk.management/com.sun.management.internal.PlatformMBeanProviderImpl.getOperatingSystemMXBean(PlatformMBeanProviderImpl.java:281)
2025-02-23 12:31:42     at jdk.management/com.sun.management.internal.PlatformMBeanProviderImpl$3.nameToMBeanMap(PlatformMBeanProviderImpl.java:198)
2025-02-23 12:31:42     at java.management/java.lang.management.ManagementFactory.lambda$getPlatformMBeanServer$0(ManagementFactory.java:487)
2025-02-23 12:31:42     at java.base/java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:271)
2025-02-23 12:31:42     at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:177)
2025-02-23 12:31:42     at java.base/java.util.HashMap$ValueSpliterator.forEachRemaining(HashMap.java:1693)
2025-02-23 12:31:42     at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)
2025-02-23 12:31:42     at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
2025-02-23 12:31:42     at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150)
2025-02-23 12:31:42     at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173)
2025-02-23 12:31:42     at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
2025-02-23 12:31:42     at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:497)
2025-02-23 12:31:42     at java.management/java.lang.management.ManagementFactory.getPlatformMBeanServer(ManagementFactory.java:488)
2025-02-23 12:31:42     at jdk.management.agent/sun.management.jmxremote.ConnectorBootstrap.startLocalConnectorServer(ConnectorBootstrap.java:542)
2025-02-23 12:31:42     at jdk.management.agent/jdk.internal.agent.Agent.startLocalManagementAgent(Agent.java:318)
2025-02-23 12:31:42     at jdk.management.agent/jdk.internal.agent.Agent.startAgent(Agent.java:450)
2025-02-23 12:31:42     at jdk.management.agent/jdk.internal.agent.Agent.startAgent(Agent.java:599)
2025-02-23 12:31:42 Exception thrown by the agent : java.lang.NullPointerException
2025-02-23 12:31:47 ===> Running preflight checks ... 
2025-02-23 12:31:47 ===> Launching ... 
2025-02-23 12:31:47 ===> Launching kafka ... 
2025-02-23 12:31:48 java.lang.NullPointerException
2025-02-23 12:31:48     at java.base/jdk.internal.platform.cgroupv2.CgroupV2Subsystem.getInstance(CgroupV2Subsystem.java:81)
2025-02-23 12:31:48     at java.base/jdk.internal.platform.CgroupSubsystemFactory.create(CgroupSubsystemFactory.java:113)
2025-02-23 12:31:48     at java.base/jdk.internal.platform.CgroupMetrics.getInstance(CgroupMetrics.java:167)
2025-02-23 12:31:48     at java.base/jdk.internal.platform.SystemMetrics.instance(SystemMetrics.java:29)
2025-02-23 12:31:48     at java.base/jdk.internal.platform.Metrics.systemMetrics(Metrics.java:58)
2025-02-23 12:31:48     at java.base/jdk.internal.platform.Container.metrics(Container.java:43)
2025-02-23 12:31:48     at jdk.management/com.sun.management.internal.OperatingSystemImpl.<init>(OperatingSystemImpl.java:182)
2025-02-23 12:31:48     at jdk.management/com.sun.management.internal.PlatformMBeanProviderImpl.getOperatingSystemMXBean(PlatformMBeanProviderImpl.java:281)
2025-02-23 12:31:48     at jdk.management/com.sun.management.internal.PlatformMBeanProviderImpl$3.nameToMBeanMap(PlatformMBeanProviderImpl.java:198)
2025-02-23 12:31:48     at java.management/java.lang.management.ManagementFactory.lambda$getPlatformMBeanServer$0(ManagementFactory.java:487)
2025-02-23 12:31:48     at java.base/java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:271)
2025-02-23 12:31:48     at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:177)
2025-02-23 12:31:48     at java.base/java.util.HashMap$ValueSpliterator.forEachRemaining(HashMap.java:1693)
2025-02-23 12:31:48     at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)
2025-02-23 12:31:48     at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
2025-02-23 12:31:48     at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150)
2025-02-23 12:31:48     at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173)
2025-02-23 12:31:48     at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
2025-02-23 12:31:48     at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:497)
2025-02-23 12:31:48     at java.management/java.lang.management.ManagementFactory.getPlatformMBeanServer(ManagementFactory.java:488)
2025-02-23 12:31:48     at jdk.management.agent/sun.management.jmxremote.ConnectorBootstrap.startLocalConnectorServer(ConnectorBootstrap.java:542)
2025-02-23 12:31:48     at jdk.management.agent/jdk.internal.agent.Agent.startLocalManagementAgent(Agent.java:318)
2025-02-23 12:31:48     at jdk.management.agent/jdk.internal.agent.Agent.startAgent(Agent.java:450)
2025-02-23 12:31:48     at jdk.management.agent/jdk.internal.agent.Agent.startAgent(Agent.java:599)
2025-02-23 12:31:48 Exception thrown by the agent : java.lang.NullPointerException

Steps to Reproduce

import { KafkaContainer } from '@testcontainers/kafka';

jest.setTimeout(60 * 10000);

describe('addNumbers function', () => {


  it("should connect using in-built zoo-keeper", async () => {
    const kafkaContainer = await new KafkaContainer().withExposedPorts(9093).start();
  
    const host = await kafkaContainer.getHost();
    console.log(host)

    await kafkaContainer.stop();
  });
});

Environment Information

  • Operating System: mac M3 15.3 (same behavior on mac with Intel!)
  • Docker Version:
  • Client:
    Version: 27.5.1
    API version: 1.47
    Go version: go1.22.11
    Git commit: 9f9e405
    Built: Wed Jan 22 13:37:19 2025
    OS/Arch: darwin/arm64
    Context: desktop-linux

Server: Docker Desktop 4.38.0 (181591)
Engine:
Version: 27.5.1
API version: 1.47 (minimum version 1.24)
Go version: go1.22.11
Git commit: 4c9b3b0
Built: Wed Jan 22 13:41:25 2025
OS/Arch: linux/arm64
Experimental: false
containerd:
Version: 1.7.25
GitCommit: bcc810d6b9066471b0b6fa75f557a15a1cbf31bb
runc:
Version: 1.1.12
GitCommit: v1.1.12-0-g51d5e946
docker-init:
Version: 0.19.0
GitCommit: de40ad0

  • Node version:
  • v22.14.0
  • Testcontainers version:10.18.0
  • java:
    openjdk 21.0.6 2025-01-21 LTS
    OpenJDK Runtime Environment Temurin-21.0.6+7 (build 21.0.6+7-LTS)
    OpenJDK 64-Bit Server VM Temurin-21.0.6+7 (build 21.0.6+7-LTS, mixed mode, sharing)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions