Git Product home page Git Product logo

cake.docker's Introduction

Cake.Docker

A Cake AddIn that extends Cake with Docker command tools.

cakebuild.net NuGet

Including addin

Including addin in cake script is easy.

#addin "Cake.Docker"

Commands supported

BREAKING: Since 0.9 references Cake 0.26 (and goes .NET Standard 2.0 only)

Important: Docker 17.* is supported since v0.8 and background compatibility is dropped (most notably, array arguments are converter to strings). If you wish to match older docker versions, user an older Cake.Docker version.

Important: Since version 0.8.0 the settings are generated from the latest Docker source code on github.

BREAKING Starting with 0.8.0 command's setting types that haven't been composed of all words have changed to full name. i.e. DockerBuildSettings to DockerImageBuildSettings).

Usage

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.

General Notes

This is an initial version and not tested thoroughly.

Contributions welcome - but not for command settings code. The reason being is that the actual code for settings is autogenerated from docker sources.

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.

Follow @mihamarkic

cake.docker's People

Contributors

daveaglick avatar mihamarkic avatar nrjohnstone-coolblue avatar pvwichen avatar wrathza avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.