Struct docktape::Docker[][src]

pub struct Docker { /* fields omitted */ }

Struct representing a Docker object with its socket

Methods

impl Docker
[src]

Returns Docker informations

Example

 match docker.get_info(){
      Some(info) =>{
          println!("Dock info: {}", info);
      },
      None =>{
          println!("No info! (Docker is offline?)");
      }
  }

Creates a Docker image from a public image

Example

 match docker.create_image_from_image("fedora:latest", ""){
       Some(msg) =>{
           println!("Error message: {:?}", msg["message"]);
       }
       None =>{
           println!("Image created.");
       }
   }

Returns a vec of Docker images

Example

 match docker.get_images(){
      Some(images) =>{
          println!("There are {} image(s).", images.len());
      },
      None =>{
          println!("There are no images.");
      }
  }

Inspects a Docker image

Example

 match docker.inspect_image("fedora:latest"){
      Some(img) => {
          println!("Image id: {}.", img.id());
      }
      None => {
          println!("Cannot get image.");
      }
  }

Deletes a Docker image

Example

 match docker.delete_image("fedora:latest"){
      Some(_) =>{
          println!("Image deleted.");
      }
      None =>{
          println!("Error while deleting image.");
      }
  }

Creates a Docker container

Example

 let body = json!({
      "Image": "fedora:latest",
      "Cmd": ["echo"]
  });

  match docker.create_container(&body.to_string(), "my_container"){
      Some(_) =>{
          println!("Container created.");
      },
      None =>{
          println!("Error while creating container.");
      }
  }

Returns a vec of Docker containers

Example

match docker.get_containers(){
      Some(containers) =>{
          println!("There are {} container(s).", containers.len());
      },
      None =>{
          println!("There are no containers.");
      }
  }

Inspects a Docker container

Example

 match docker.inspect_container("my_container"){
      Some(container) =>{
          println!("Container id: {}.", container.id());
      }
      None =>{
          println!("Container can't be found.");
      }
  }

Starts a Docker container

Example

 match docker.start_container("my_container"){
      Some(msg) =>{
          println!("Error message: {:?}.", msg["message"]);
      }
      None =>{
          println!("Container started.");
      }
  }

Stops a Docker container

Example

 match docker.stop_container("my_container"){
      Some(msg) =>{
          println!("Error message: {:?}.", msg["message"]);
      }
      None =>{
          println!("Container stopped.");
      }
  }

Restarts a Docker container

Example

 match docker.restart_container("my_container"){
      Some(msg) =>{
          println!("Error message: {:?}.", msg["message"]);
      }
      None =>{
          println!("Container restarted.");
      }
  }

Deletes a Docker container

Example

 match docker.delete_container("my_container"){
      Some(msg) =>{
          println!("Error message: {:?}", msg["message"]);
      }
      None =>{
          println!("Container deleted.");
      }
  }

Creates a Docker network

Example

 let body = json!({
      "Name": "my_network",
      "CheckDuplicate": true
  });

  match docker.create_network(&body.to_string()) {
      Some(_) =>{
          println!("Network created.");
      }
      None =>{
          println!("Error while creating network.");
      }
  }

Returns a vec of Docker networks

Example

 match docker.get_networks(){
      Some(networks) =>{
          println!("There are {} network(s).", networks.len());
      },
      None =>{
          println!("There are no networks.");
      }
  }

Inspects a Docker network

Example

 match docker.inspect_network("my_network"){
      Some(network) => {
          println!("Network id: {}.", network.id());
      }
      None => {
          println!("Cannot get network.");
      }
  }

Deletes a Docker network

Example

  match docker.delete_network("my_network"){
      Some(msg) =>{
          println!("Error message: {:?}.", msg["message"]);
      }
      None =>{
          println!("Network deleted.");
      }
  }

Creates a Docker volume

Example

   let body = json!({
      "Name": "my_volume"
  });

  match docker.create_volume(&body.to_string()){
      Some(_) =>{
          println!("Volume created.");
      }
      None =>{
          println!("Error while creating volume.");
      }
  }

Returns a vec of Docker volumes

Example

  match docker.get_volumes(){
      Some(volumes) =>{
          println!("There are {} volume(s).", volumes.len());
      },
      None =>{
          println!("There are no volumes.");
      }
  }

Inspects a Docker volume

Example

 match docker.inspect_volume("my_volume"){
      Some(volume) =>{
          println!("Volume mountpoint: {}.", volume.mountpoint());
      }
      None =>{
          println!("Volume can't be found.");
      }
  }

Deletes a Docker volume

Example

 match docker.delete_volume("my_volume"){
      Some(msg) =>{
          println!("Error message: {:?}", msg["message"]);
      }
      None =>{
          println!("Volume deleted.");
      }
  }

Auto Trait Implementations

impl Send for Docker

impl Sync for Docker