Added container updates watcher
This commit is contained in:
1 parent
ac35f919b2
commit
4949f34461
1 file changed
+40
@@ -0,0 +1,40 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"flag"
|
||||
"github.com/fsouza/go-dockerclient"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
var (
|
||||
serverAddr string
|
||||
serverPort int
|
||||
apiPath string
|
||||
)
|
||||
flag.StringVar(&serverAddr, "host", "", "address or hostname of server to update")
|
||||
flag.IntVar(&serverPort, "port", 6785, "port on server to send updates to")
|
||||
flag.StringVar(&apiPath, "api", "unix:///var/run/docker.sock",
|
||||
"Path to Docker API socket")
|
||||
flag.Parse()
|
||||
|
||||
client, err := docker.NewClient(apiPath)
|
||||
if err != nil {
|
||||
log.Fatalf("Unable to connect to Docker API on %s: %s", apiPath, err)
|
||||
}
|
||||
|
||||
events := make(chan *docker.APIEvents)
|
||||
done := make(chan bool)
|
||||
client.AddEventListener(events)
|
||||
|
||||
log.Printf("Using Docker API on %s", apiPath)
|
||||
log.Printf("Posting updates to server %s:%d", serverAddr, serverPort)
|
||||
|
||||
go func() {
|
||||
for event := range events {
|
||||
log.Printf("Event %s", *event)
|
||||
}
|
||||
done <- true
|
||||
}()
|
||||
<-done
|
||||
}
|
||||
Reference in new issue
Block a user