veslav3 / docker-image-puller

Tiny webserver listening for webhooks to update & restart your running Docker containers with a specified image

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Docker Image Puller

Overview

If you work with docker and continuous integrations tools, you might need to update your images on your servers as soon as your build is finished.

This tool is a tiny webserver listening for a POST and automatically update the specified image using Docker API.

You just have to run the image on your server, and configure your CI tool.

CI tools to make the POST request:

Installation

Launch the image on your server, where the images you want to update are

docker run -d \
  --name dip \
  --env TOKEN=abcd4242 \
  --env REGISTRY_USER=roberto \
  --env REGISTRY_PASSWD=robertopwd \
  -p 8080:8080 \
  -v /var/run/docker.sock:/var/run/docker.sock \
  tuxity/docker-image-puller

Available env variable:

TOKEN*
REGISTRY_USER
REGISTRY_PASSWD
REGISTRY_URL (default: https://index.docker.io/v1/)
HOST (default: 0.0.0.0)
PORT (default: 8080)
DEBUG (default: False)

* mandatory variables. For TOKEN You can generate a random string, it's a security measure.

After, you just have to make a request to the server:

POST http://ipofyourserver/images/pull?token=abcd4242&restart_containers=true&image=nginx:latest

Logs

You can access container logs with

docker logs --follow dip

About

Tiny webserver listening for webhooks to update & restart your running Docker containers with a specified image

License:MIT License


Languages

Language:Python 100.0%