Skip to content

Instantly share code, notes, and snippets.

@sreuter
Last active August 29, 2015 14:00
Show Gist options
  • Save sreuter/f1c161bbab3d8547aea0 to your computer and use it in GitHub Desktop.
Save sreuter/f1c161bbab3d8547aea0 to your computer and use it in GitHub Desktop.
Demux dockerade.run() logging
// StreamBuffer
var StreamBuffer = function() {
var streamBuffer = new Stream();
streamBuffer.arr = [];
streamBuffer.writable = true;
streamBuffer.write = function(data) {
this.arr.push(data);
};
streamBuffer.end = function() {};
return streamBuffer;
};
// Init Docker Instance
var docker = new Docker({socketPath: '/var/run/docker.sock'});
// Create streambuffer (stdout, stderr)
var stdout = new StreamBuffer(), stderr = new StreamBuffer();
// Create Stream
var stream = new Stream();
stream.writable = true;
stream.write = function(data) {
this.emit('data', data);
};
stream.end = function() {};
docker.modem.demuxStream(stream, stdout, stderr);
// Feed stream to docker.run() ...
docker.run(image, cmd, stream, opts, function(err, data, container) {
...
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment