{"record":{"id":"3821069514f4a33f","repo":"testcontainers/testcontainers-java","slug":"aborting-attempt-to-link-to-container-containername-as-it-is","errorCode":null,"errorMessage":"Aborting attempt to link to container ${containerName} as it is not running","messagePattern":"Aborting attempt to link to container (.+?) as it is not running","errorType":"exception","errorClass":"ContainerLaunchException","httpStatus":null,"severity":"error","filePath":"core/src/main/java/org/testcontainers/containers/GenericContainer.java","lineNumber":794,"sourceCode":"\n    private void applyConfiguration(CreateContainerCmd createCommand) {\n        this.containerDef.applyTo(createCommand);\n        buildHostConfig(createCommand.getHostConfig());\n\n        VolumesFrom[] volumesFromsArray = volumesFroms.stream().toArray(VolumesFrom[]::new);\n        createCommand.withVolumesFrom(volumesFromsArray);\n\n        Set<Link> allLinks = new HashSet<>();\n        Set<String> allLinkedContainerNetworks = new HashSet<>();\n        for (Entry<String, LinkableContainer> linkEntries : linkedContainers.entrySet()) {\n            String alias = linkEntries.getKey();\n            LinkableContainer linkableContainer = linkEntries.getValue();\n\n            Set<Link> links = findLinksFromThisContainer(alias, linkableContainer);\n            allLinks.addAll(links);\n\n            if (allLinks.size() == 0) {\n                throw new ContainerLaunchException(\n                    \"Aborting attempt to link to container \" +\n                    linkableContainer.getContainerName() +\n                    \" as it is not running\"\n                );\n            }\n\n            Set<String> linkedContainerNetworks = findAllNetworksForLinkedContainers(linkableContainer);\n            allLinkedContainerNetworks.addAll(linkedContainerNetworks);\n        }\n\n        createCommand.withLinks(allLinks.toArray(new Link[allLinks.size()]));\n\n        allLinkedContainerNetworks.remove(\"bridge\");\n        if (allLinkedContainerNetworks.size() > 1) {\n            logger()\n                .warn(\n                    \"Container needs to be on more than one custom network to link to other \" +\n                    \"containers - this is not currently supported. Required networks are: {}\",","sourceCodeStart":776,"sourceCodeEnd":812,"githubUrl":"https://github.com/testcontainers/testcontainers-java/blob/8e549514e3f01c57d70546fbb8599d138f3903e5/core/src/main/java/org/testcontainers/containers/GenericContainer.java#L776-L812","documentation":"Thrown during container startup while applyConfiguration builds the Docker create command: a link was requested (via withLinkedContainer) to a peer container that is not currently running, so the link is aborted. It fires because legacy Docker --link requires the target container to be up at configuration time.","triggerScenarios":"Thrown at core/src/main/java/org/testcontainers/containers/GenericContainer.java:794 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Ensure the linked container is started before this container is started","Reorder container lifecycle so dependencies start first","Use a shared Docker network instead of legacy container links"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"8e549514e3f01c57d70546fbb8599d138f3903e5","analyzedAt":"2026-09-12T14:56:41.227Z","contentChangedAt":"2026-09-12T14:56:41.227Z","schemaVersion":2},"datasetVersion":"2026-09-23T08:17:48.524Z"}