Skip to content

Docker registry notification server that receives manifest events for search, migration and analysis.

License

Notifications You must be signed in to change notification settings

duyanghao/registry-notification-server

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

registry-notification-server

registry-notification-server is a notification server of docker registry that receives manifest events and stores them in MongoDB for search, migration and analysis.

Overview

The Registry supports sending webhook notifications in response to events happening within the registry. Notifications are sent in response to manifest pushes and pulls and layer pushes and pulls. These actions are serialized into events. The events are queued into a registry-internal broadcast system which queues and dispatches events to Endpoints. [...] Notifications are sent to endpoints via HTTP requests.

registry-notification-server implements the above event notification protocol and provides some simple functions.

Prerequisites

This server assumes the following:

  • This notification server is designed for internal use, so it uses http instead of https, but still, it can be easily expanded to https using http.ListenAndServeTLS

Detail

The registry notification server listens for events coming from a docker registry v2, upon receiving an event, it inspects the event and inserts the pull or push records and repository informations into a Mongo database. The information stored in MongoDB support these functions:

  • Repository and Tag Search
  • Pull and Push Logs Search
  • Docker Registry Migration

Build the tool on your own

These instructions walk you through compiling this project to create a single standalone binary that you can copy and run almost wherever you want.

$ git clone https://github.com/duyanghao/registry-notification-server.git $GOPATH/src/github.com/duyanghao/registry-notification-server
$ cd $GOPATH/src/github.com/duyanghao/registry-notification-server && go build

Run

./registry-notification-server ./examples/config.yml

Suggestion

This is only a demo implemented as docker registry event notification endpoint, which still needs further enhancement.

Refs

About

Docker registry notification server that receives manifest events for search, migration and analysis.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published