A Cake AddIn that extends Cake with Docker command tools.
Including addin in cake script is easy.
#addin "Cake.Docker"
- DockerLoad v0.6.0
- DockerSave v0.6.0
- DockerNetworkCreate v0.5.0
- DockerNetworkConnect v0.5.0
- DockerNetworkDisconnect v0.5.0
- DockerNetworkRm v0.5.0
- DockerSwarmInit v0.5.0
- DockerSwarmJoin v0.5.0
- DockerSwarmLeave v0.5.0
- DockerSwarmUpdate v0.5.0
- DockerLogin v0.4.0
- DockerPush v0.4.0
- DockerTag v0.4.0
- DockerPs v0.3.0
- DockerRm
- DockerRmi
- DockerStop
- DockerBuild
- DockerCreate v0.2.0
- DockerBuild v0.1.0, 0.2.0 (full settings)
- DockerCp v0.2.0
To use the addin just add it to Cake call the aliases and configure any settings you want.
#addin "Cake.Docker"
...
// How to remove a container with no settings
Task("DockerRm")
.Does(() => {
// or more containers at once
DockerRm("containerName1", "containerName2", ...);
)};
// How to remove a container with settings
Task("DockerRmWithSettings")
.Does(() => {
// or more containers at once
DockerRm(new DockerRmSettings { Force = true }, "containerName1", "containerName2", ...);
)};
Other commands follow same convention.
All come with settings argument and support all settings except for DockerBuild which supports only major settings.
This is an initial version and not tested thoroughly. Contributions welcome.
Tested only on Windows and Ubuntu. Ensure that Docker command line tool can be located using the PATH (e.g. check that it can be found with which docker
).
On Linux machines, ensure that user has access to the docker
daemon Unix socket or use the DOCKER_HOST environment variable to point to the daemon's TCP port.
Refer to the Docker documentation for controlling access to the docker daemon Unix socket.