Skip to content

codefresh-io/docker-events

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

docker-events

Create an event emitter from dockerode's events response

Overview

Docker exposes an event API, allowing one to monitor the happenings of a Docker host. dockerode allows for consumption of this API, albeit in a very raw form. docker-events does a bit of work for you, turning the raw API of dockerode into something a little more high-level by parsing the response stream and pushing things out of an EventEmitter.

API

DockerEvents (constructor)

var emitter = new DockerEvents({
  docker: new Dockerode(options),
});

start

emitter.start();

stop

emitter.stop();

#connect

emitter.on("connect", function() {
  console.log("connected to docker api");
});

#disconnect

emitter.on("disconnect", function() {
  console.log("disconnected to docker api; reconnecting");
});

#_message

Any raw event from Docker.

emitter.on("_message", function(message) {
  console.log("got a message from docker: %j", message);
});

Docker events

Events are emitted in a form of <event.Type>:<event.Action>.

Full list of events: https://docs.docker.com/reference/api/engine/version/v1.52/#tag/System/operation/SystemEvents

For example:

emitter.on("container:create", function(message) {
  console.log("container created: %j", message);
});

emitter.on("container:start", function(message) {
  console.log("container started: %j", message);
});

License

3-clause BSD. A copy is included with the source.

Contact

About

Create an event emitter from dockerode's events response

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 100.0%