|
NAMERex::Box::Docker - Rex/Boxes Docker Module DESCRIPTIONThis is a Rex/Boxes module to use Docker Images. You need to have dockerd installed. EXAMPLESTo use this module inside your Rexfile you can use the following commands. use Rex::Commands::Box;
set box => "Docker";
task "prepare_box", sub {
box {
my ($box) = @_;
$box->name("mybox");
$box->url("http://box.rexify.org/box/ubuntu-server-12.10-amd64.tar.gz");
$box->url("debian:latest");
$box->network(1 => {
name => "default",
});
$box->auth(
user => "root",
password => "box",
);
$box->setup("setup_task");
};
};
If you want to use a YAML file you can use the following template. type: Docker
vms:
vmone:
url: debian:latest
setup: setup_task
And then you can use it the following way in your Rexfile. use Rex::Commands::Box init_file => "file.yml";
task "prepare_vms", sub {
boxes "init";
};
METHODSSee also the Methods of Rex::Box::Base. This module inherits all methods of it. new(name => $vmname)Constructor if used in OO mode. my $box = Rex::Box::Docker->new(name => "vmname"); memory($memory_size)Sets the memory of a VM in megabyte. infoReturns a hashRef of vm information. ipThis method return the ip of a vm on which the ssh daemon is listening.
|