summaryrefslogtreecommitdiffstats
path: root/examples
diff options
context:
space:
mode:
authorAlexander Kirillov <saratovsource@gmail.com>2017-04-03 22:52:18 +0400
committerAlexander Kirillov <saratovsource@gmail.com>2017-04-03 22:52:18 +0400
commitad1153421117b7c92785623b43c44bedda15f369 (patch)
tree857611c0984c1491254b64c2cb0dbfeee82d4772 /examples
parent6653b0c4bb79dfa6b11aa786dcc6a2f7ed767452 (diff)
Add support for docker networks
commit 55008eea85dace74acc625914e11d87d15a46b1e Author: Alexander Kirillov <saratovsource@gmail.com> Date: Mon Apr 3 22:47:34 2017 +0400 Some DRY commit c9173593eb9827b30071cb6e42d439ec3d4c3bb1 Author: Alexander Kirillov <saratovsource@gmail.com> Date: Mon Apr 3 22:42:35 2017 +0400 Connect container to network commit 8d68406ef4c69c98e43b7b28923a78e1e9672955 Author: Alexander Kirillov <saratovsource@gmail.com> Date: Mon Apr 3 22:09:58 2017 +0400 Create docker network commit 868e2076988c0b16f6d5a200cf12e77f5bffaeab Author: Alexander Kirillov <saratovsource@gmail.com> Date: Mon Apr 3 18:49:12 2017 +0400 Delete network commit 58a08e77e5984847589eeb35bc097c8949752619 Author: Alexander Kirillov <saratovsource@gmail.com> Date: Mon Apr 3 18:42:28 2017 +0400 Add inspect docker network commit 9fa4143013aa43aaf73645b19565d6e606489952 Author: Alexander Kirillov <saratovsource@gmail.com> Date: Mon Apr 3 18:03:02 2017 +0400 Add list networks
Diffstat (limited to 'examples')
-rw-r--r--examples/networkconnect.rs16
-rw-r--r--examples/networkcreate.rs17
-rw-r--r--examples/networkdelete.rs15
-rw-r--r--examples/networkdisconnect.rs16
-rw-r--r--examples/networkinspect.rs15
-rw-r--r--examples/networks.rs13
6 files changed, 92 insertions, 0 deletions
diff --git a/examples/networkconnect.rs b/examples/networkconnect.rs
new file mode 100644
index 0000000..165510b
--- /dev/null
+++ b/examples/networkconnect.rs
@@ -0,0 +1,16 @@
+extern crate shiplift;
+
+use shiplift::{ContainerConnectionOptions, Docker};
+use std::env;
+
+fn main() {
+ let docker = Docker::new();
+ let networks = docker.networks();
+ let container_id = env::args().nth(1).unwrap();
+ let network_id = env::args().nth(2).unwrap();
+ let info = networks
+ .get(&network_id)
+ .connect(&ContainerConnectionOptions::new(&container_id))
+ .unwrap();
+ println!("{:?}", info);
+}
diff --git a/examples/networkcreate.rs b/examples/networkcreate.rs
new file mode 100644
index 0000000..b78ddd0
--- /dev/null
+++ b/examples/networkcreate.rs
@@ -0,0 +1,17 @@
+extern crate shiplift;
+
+use shiplift::{NetworkCreateOptions, Docker};
+use std::env;
+
+fn main() {
+ let docker = Docker::new();
+ let networks = docker.networks();
+ if let Some(network_name) = env::args().nth(1) {
+ let info = networks.create(
+ &NetworkCreateOptions::builder(network_name.as_ref())
+ .driver("bridge")
+ .build()
+ ).unwrap();
+ println!("{:?}", info);
+ }
+}
diff --git a/examples/networkdelete.rs b/examples/networkdelete.rs
new file mode 100644
index 0000000..e67b798
--- /dev/null
+++ b/examples/networkdelete.rs
@@ -0,0 +1,15 @@
+extern crate shiplift;
+
+use shiplift::Docker;
+use std::env;
+
+fn main() {
+ let docker = Docker::new();
+ if let Some(id) = env::args().nth(1) {
+ let status = docker.networks()
+ .get(&id)
+ .delete()
+ .unwrap();
+ println!("{:?}", status);
+ }
+}
diff --git a/examples/networkdisconnect.rs b/examples/networkdisconnect.rs
new file mode 100644
index 0000000..b3e0721
--- /dev/null
+++ b/examples/networkdisconnect.rs
@@ -0,0 +1,16 @@
+extern crate shiplift;
+
+use shiplift::{ContainerConnectionOptions, Docker};
+use std::env;
+
+fn main() {
+ let docker = Docker::new();
+ let networks = docker.networks();
+ let container_id = env::args().nth(1).unwrap();
+ let network_id = env::args().nth(2).unwrap();
+ let info = networks
+ .get(&network_id)
+ .disconnect(&ContainerConnectionOptions::new(&container_id))
+ .unwrap();
+ println!("{:?}", info);
+}
diff --git a/examples/networkinspect.rs b/examples/networkinspect.rs
new file mode 100644
index 0000000..f290f93
--- /dev/null
+++ b/examples/networkinspect.rs
@@ -0,0 +1,15 @@
+extern crate shiplift;
+
+use shiplift::Docker;
+use std::env;
+
+fn main() {
+ let docker = Docker::new();
+ if let Some(id) = env::args().nth(1) {
+ let network = docker.networks()
+ .get(&id)
+ .inspect()
+ .unwrap();
+ println!("{:?}", network);
+ }
+}
diff --git a/examples/networks.rs b/examples/networks.rs
new file mode 100644
index 0000000..18767d1
--- /dev/null
+++ b/examples/networks.rs
@@ -0,0 +1,13 @@
+extern crate shiplift;
+extern crate env_logger;
+
+use shiplift::Docker;
+
+fn main() {
+ env_logger::init().unwrap();
+ let docker = Docker::new();
+ for c in docker.networks().
+ list(&Default::default()).unwrap() {
+ println!("network -> {:?}", c)
+ }
+}