summaryrefslogtreecommitdiffstats
path: root/src/main/java/net/libertacasa/pubsh/web/Docker.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/net/libertacasa/pubsh/web/Docker.java')
-rw-r--r--src/main/java/net/libertacasa/pubsh/web/Docker.java25
1 files changed, 23 insertions, 2 deletions
diff --git a/src/main/java/net/libertacasa/pubsh/web/Docker.java b/src/main/java/net/libertacasa/pubsh/web/Docker.java
index 2aebe9c..9621978 100644
--- a/src/main/java/net/libertacasa/pubsh/web/Docker.java
+++ b/src/main/java/net/libertacasa/pubsh/web/Docker.java
@@ -11,6 +11,7 @@ import java.util.stream.Collectors;
import com.github.dockerjava.api.DockerClient;
import com.github.dockerjava.api.command.BuildImageResultCallback;
import com.github.dockerjava.api.command.CreateContainerResponse;
+import com.github.dockerjava.api.command.InspectContainerResponse;
import com.github.dockerjava.api.command.ListContainersCmd;
import com.github.dockerjava.api.command.ListImagesCmd;
import com.github.dockerjava.api.command.WaitContainerResultCallback;
@@ -98,7 +99,7 @@ public class Docker {
public static String buildImage(String targetUser, String osChoice, Integer count) {
String dockerfile = "/home/georg/tmp/docker/Dockerfile_" + osChoice;
- String tag = targetUser + ":sh" + count;
+ String tag = targetUser + ":" + osChoice + count;
if (! new File(dockerfile).exists()) {
System.out.printf("Invalid Dockerfile: %s\n", dockerfile);
}
@@ -113,7 +114,7 @@ public class Docker {
return(imgid);
}
- public static void deleteImage(String username, String id) {
+ public static void deleteImage(String id) {
List<Image> imagequery = Docker.getImages(null);
if (imagequery.toString().contains(id)) {
@@ -151,5 +152,25 @@ public class Docker {
System.out.printf("Created container with ID %s from image ID %s\n", containerid, imgid);
return(containerid);
}
+
+ public static String deleteShell(String user, String id) {
+ Docker.deleteContainer(id);
+ List<Image> images = Docker.getImages(user);
+ for (Image image : images) {
+ System.out.println(image.getLabels());
+ String imageid = image.getId();
+ System.out.println(imageid);
+ try {
+ Docker.deleteImage(imageid);
+ System.out.println("Removed.");
+ } catch (com.github.dockerjava.api.exception.ConflictException exception) {
+ System.out.println("Still being used, skipping.");
+ }
+
+
+ }
+
+ return("foo");
+ }
}