[![docs](https://docs.rs/docker-ctl/badge.svg)](https://docs.rs/docker-ctl) [![crates.io](https://img.shields.io/crates/v/docker-ctl.svg)](https://crates.io/crates/docker-ctl)
docker-ctl ========== Crate for conveniently starting and stopping docker containers. This crate is a wrapper around the docker command line interface. Installation ------------ Add `docker-ctl` to your project with: ```bash cargo add docker-ctl ``` Example ------- ```rust use docker_ctl::Container; use std::io::{Read, Write}; // Create a new container, with the `alpine` image in interractive mode. let mut container = Container::configure("alpine") .set_interractive(true) .create(); /// Start the container container.start().unwrap(); /// Run the `echo` command in the container let mut stdin = container.take_stdin().unwrap(); stdin.write_all(b"echo Hello World!").unwrap(); /// Dropping `stdin` will terminate the container drop(stdin); /// Read the output let mut buf = vec![]; container .take_stdout() .unwrap() .read_to_end(&mut buf) .unwrap(); /// Print `Hellow World!\n` characters. println!("{:?}", buf); ```