Socket
Socket
Sign inDemoInstall

dockerode

Package Overview
Dependencies
Maintainers
1
Versions
90
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

dockerode - npm Package Compare versions

Comparing version 2.5.1 to 2.5.2

lib/config.js

84

lib/docker.js

@@ -15,2 +15,3 @@ var EventEmitter = require('events').EventEmitter,

Secret = require('./secret'),
Config = require('./config'),
Task = require('./task'),

@@ -387,2 +388,10 @@ Node = require('./node'),

/**
* Fetches a Config by id
* @param {String} id network's id
*/
Docker.prototype.getConfig = function(id) {
return new Config(this.modem, id);
};
/**
* Fetches an Exec instance by ID

@@ -611,3 +620,44 @@ * @param {String} id Exec instance's ID

/**
* Creates a new config
* @param {Object} opts Config options
* @param {Function} callback Callback
*/
Docker.prototype.createConfig = function(opts, callback) {
var args = util.processArgs(opts, callback);
var self = this;
var optsf = {
path: '/configs/create?',
method: 'POST',
options: args.opts,
statusCodes: {
200: true, // unofficial, but proxies may return it
201: true,
406: 'server error or node is not part of a swarm',
409: 'name conflicts with an existing object',
500: 'server error'
}
};
if (args.callback === undefined) {
return new this.modem.Promise(function(resolve, reject) {
self.modem.dial(optsf, function(err, data) {
if (err) {
return reject(err);
}
resolve(self.getConfig(data.ID));
});
});
} else {
this.modem.dial(optsf, function(err, data) {
if (err) return args.callback(err, data);
args.callback(err, self.getConfig(data.ID));
});
}
};
/**
* Lists secrets

@@ -647,2 +697,36 @@ * @param {Function} callback Callback

/**
* Lists configs
* @param {Function} callback Callback
*/
Docker.prototype.listConfigs = function(opts, callback) {
var self = this;
var args = util.processArgs(opts, callback);
var optsf = {
path: '/configs?',
method: 'GET',
options: args.opts,
statusCodes: {
200: true,
500: 'server error'
}
};
if (args.callback === undefined) {
return new this.modem.Promise(function(resolve, reject) {
self.modem.dial(optsf, function(err, data) {
if (err) {
return reject(err);
}
resolve(data);
});
});
} else {
this.modem.dial(optsf, function(err, data) {
args.callback(err, data);
});
}
};
/**
* Creates a new plugin

@@ -649,0 +733,0 @@ * @param {Object} opts Create options

@@ -51,2 +51,37 @@ var util = require('./util');

/**
* Distribution
* @param {Function} callback Callback, if specified Docker will be queried.
* @return {Object} Name only if callback isn't specified.
*/
Image.prototype.distribution = function(callback) {
var self = this;
var opts = {
path: '/distribution/' + this.name + '/json',
method: 'GET',
statusCodes: {
200: true,
401: 'no such image',
500: 'server error'
}
};
if(callback === undefined) {
return new this.modem.Promise(function(resolve, reject) {
self.modem.dial(opts, function(err, data) {
if (err) {
return reject(err);
}
resolve(data);
});
});
} else {
this.modem.dial(opts, function(err, data) {
if (err) return callback(err, data);
callback(err, data);
});
}
};
/**
* History

@@ -53,0 +88,0 @@ * @param {Function} callback Callback

@@ -50,3 +50,42 @@ var util = require('./util');

/**
* Task logs
* @param {Object} opts Logs options. (optional)
* @param {Function} callback Callback with data
*/
Task.prototype.logs = function(opts, callback) {
var self = this;
var args = util.processArgs(opts, callback, this.defaultOptions.log);
var optsf = {
path: '/tasks/' + this.id + '/logs?',
method: 'GET',
isStream: args.opts.follow || false,
statusCodes: {
101: true,
200: true,
404: 'no such container',
500: 'server error',
503: 'node is not part of a swarm'
},
options: args.opts
};
if(args.callback === undefined) {
return new this.modem.Promise(function(resolve, reject) {
self.modem.dial(optsf, function(err, data) {
if (err) {
return reject(err);
}
resolve(data);
});
});
} else {
this.modem.dial(optsf, function(err, data) {
args.callback(err, data);
});
}
};
module.exports = Task;

2

package.json
{
"name": "dockerode",
"description": "Docker Remote API module.",
"version": "2.5.1",
"version": "2.5.2",
"author": "Pedro Dias <petermdias@gmail.com>",

@@ -6,0 +6,0 @@ "maintainers": [

# dockerode
[![NPM](https://nodei.co/npm/dockerode.png?downloads=true&downloadRank=true)](https://nodei.co/npm/dockerode/)
[![NPM](https://nodei.co/npm-dl/dockerode.png?months=6&height=3)](https://nodei.co/npm/dockerode/)
Not another Node.js Docker Remote API module.
Why `dockerode` is different from other Docker node.js modules:
`dockerode` objectives:

@@ -16,3 +13,3 @@ * **streams** - `dockerode` does NOT break any stream, it passes them to you allowing for some stream voodoo.

* **feature-rich** - There's a real effort in keeping **All** `Docker` Remote API features implemented and tested.
* **interfaces** - Features a **callback** and a **promise** based interfaces, making everyone happy :)
* **interfaces** - Features **callback** and **promise** based interfaces, making everyone happy :)

@@ -19,0 +16,0 @@

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc