Testcontainers 使用内置 Docker 环境 - 避免使用本地 Docker 环境
Testcontainers 是一个用于在测试中创建和管理临时 Docker 容器的 Java 库。默认情况下,Testcontainers 使用本机的 Docker 环境来创建和管理容器。但是,Testcontainers 也提供了一些方法来使用内置的 Docker 环境,而不使用本机的 Docker 环境。\n\n要使用内置的 Docker 环境,你可以使用 GenericContainer 类,并在构造函数中指定一个 Docker 镜像。然后,你可以使用 setDockerClientFactory() 方法来设置自定义的 Docker 客户端工厂,该工厂将使用内置的 Docker 环境。\n\n下面是一个使用内置 Docker 环境的示例:\n\njava\nGenericContainer container = new GenericContainer("nginx:latest")\n .setDockerClientFactory(new DockerClientFactory() {\n @Override\n public DockerClient createDockerClient(Config config) {\n return new UnixSocketClient(config) {\n @Override\n protected DockerCmdExecFactory initDockerCmdExecFactory() {\n return new DockerCmdExecFactoryImpl(getConfig()) {\n @Override\n public void init() {\n // 初始化内置 Docker 环境\n }\n };\n }\n };\n }\n });\n\n\n在上面的示例中,我们使用 GenericContainer 类创建一个名为 container 的容器,并指定了 nginx:latest 镜像。然后,我们使用 setDockerClientFactory() 方法设置了一个自定义的 Docker 客户端工厂,该工厂使用内置的 Docker 环境。\n\n通过以上步骤,你可以使用 Testcontainers 的内置 Docker 环境来创建和管理容器,而不使用本机的 Docker 环境。
原文地址: https://www.cveoy.top/t/topic/pKaH 著作权归作者所有。请勿转载和采集!