在Java中創建Docker容器需要使用Docker Java API庫。下面是一個簡單的示例代碼:
<dependencies>
<dependency>
<groupId>com.github.docker-java</groupId>
<artifactId>docker-java</artifactId>
<version>3.2.10</version>
</dependency>
</dependencies>
import com.github.dockerjava.api.DockerClient;
import com.github.dockerjava.api.command.CreateContainerResponse;
import com.github.dockerjava.core.DockerClientBuilder;
import com.github.dockerjava.core.command.PullImageResultCallback;
public class DockerContainerCreator {
public static void main(String[] args) {
// 創建Docker客戶端
DockerClient dockerClient = DockerClientBuilder.getInstance().build();
// 從Docker鏡像倉庫中拉取一個鏡像
dockerClient.pullImageCmd("image:tag")
.exec(new PullImageResultCallback())
.awaitSuccess();
// 創建一個容器
CreateContainerResponse container = dockerClient.createContainerCmd("image:tag")
.withCmd("command")
.exec();
// 啟動容器
dockerClient.startContainerCmd(container.getId())
.exec();
}
}
在這個示例中,我們使用DockerClientBuilder來創建一個DockerClient對象,然后使用pullImageCmd方法從Docker鏡像倉庫中拉取一個鏡像。然后,我們使用createContainerCmd方法創建一個容器,并使用withCmd方法設置容器的命令。最后,使用startContainerCmd方法啟動容器。
請注意,這只是一個簡單的示例代碼,實際使用中還需要處理異常、設置容器的其他屬性等。