Neuron Powered Motorization

    docklift

    0.7.0 • Public • Published

    docklift v0.7.0 Circle CI

    Manage your docker containers from JavaScript

    Install

    npm install docklift
    

    optionally (if you want to use es2015)

    npm install babel-register babel-preset-es2015
    

    How to use

    First create docklift.babel.js file like the following:

    import {task} from 'docklift'
     
    task('start-my-container')
    .create({
      name: 'my-container',
      image: 'ubuntu',
      cmd: 'some-command',
      ports: [process.env.MY_HOST_PORT + ':3000']
    })
    .do(container => {
     
      return container.start()
     
    })
     
    task('kill-my-container')
    .get('my-container', {quiet: true})
    .do(container => {
     
      return container.remove()
     
    })

    Then, invoke docklift command

    ./node_modules/.bin/docklift start-my-container
    

    The above command automatically find the docklift.js and executes the command in it. In this case it starts the container of the given name.

    ./node_modules/.bin/docklift kill-my-container
    

    The above kills and removes the container of the same name my-container-XXXX

    API

    import {task} from 'docklift'

    task(taskName)

    • @param {string} taskName The task name to register
    • @return {TaskModifier}

    Creates and registers a task of the given name. Returns task modifier and you can define your own container actions in the task.

    taskModifier.create({name, image, cmd, ports}[, ...]).do(action)

    • @param {string} name The name of the container
    • @param {string} image The image of the container (necessary only when creating container)
    • @param {string} cmd The command
    • @param {string|string[]} ports The port forwarding settings
    • @param {Function} action The action to perform

    Creates the container(s) and perform the action(s) on it.

    taskModifier.get(names).do(action)

    • @param {string|string[]} names The names of the container to get
    • @param {Function} action The action to perform

    Gets the container(s) and perform the action(s) on it.

    Container class

    container.start()

    • @return {Promise}

    Starts the container.

    container.stop()

    • @return {Promise}

    Stops the container.

    container.remove()

    • @return {Promise}

    Removes the container.

    License

    MIT

    Name

    docklift is a tool which lifts up the ability of docker by its scripting capability.

    Install

    npm i docklift

    DownloadsWeekly Downloads

    0

    Version

    0.7.0

    License

    MIT

    Last publish

    Collaborators

    • kt3k