-
-
Notifications
You must be signed in to change notification settings - Fork 55
Closed
Labels
Description
Hi Everyone,
I am running ubuntu image with command as date.
docker logs
is showing correct output but my program is not able to print anything.
Program:
public class App {
public static void main(String[] args) throws Exception {
final Container container = new LocalDocker(new File("/var/run/docker.sock")).containers().create("ubuntutest",
containerJsonObject());
container.start();
while (runningState(container)) {
}
final String logs = container.logs().fetch();
logs.trim();
System.out.println(logs);
System.out.println(logs.length());
}
private static JsonObject containerJsonObject() {
JsonObjectBuilder json = Json.createObjectBuilder();
json.add("AttachStdout", true);
json.add("AttachStderr", true);
json.add("Image", "ubuntu");
json.add("Tty", false);
json.add("Cmd", "date");
JsonArrayBuilder builder = Json.createArrayBuilder();
builder.add("OUT=/scans/firstimg.jpg");
json.add("Env", builder);
JsonObjectBuilder hostConfig = Json.createObjectBuilder();
JsonArrayBuilder binds = Json.createArrayBuilder();
binds.add("/home/shubham/scans:/scans/");
hostConfig.add("Binds", binds);
hostConfig.add("Privileged", true);
json.add("HostConfig", hostConfig);
return json.build();
}
private static boolean runningState(final Container container) throws IOException {
return container.inspect().getJsonObject("State").getBoolean("Running");
}
}
Output of above is:
�
37
Thanks for any help!!