Commit Graph

165 Commits (bb2ab925cf30668a2ec22fee141a53b843b0c107)
 

Author SHA1 Message Date
Ross Cadogan 96466dbcf7 Deploy to official and unofficial hubs 8 years ago
Ross Cadogan dad5d58339 Support loading authentication credentials from Docker config file 8 years ago
Ross Cadogan 79320bb4b6 Automatically deploy from hub branch to rosscado/watchtower docker hub repo 8 years ago
Ross Cadogan 952e720807 Change image name to push to rosscado/watchtower
The circle.yml version on this branch will automatically trigger a Circle CI build and push the resulting Docker image to the DockerHub repo rosscado/watchtower. This is a temporary DockerHub repo for the rosscado/watchtower GitHub repo, and can be used to pull or test unofficial watchtower builds before they are merged into the official centurylink/watchtower repos.
8 years ago
Ross Cadogan 5a03b65f30 Automatically push rosscado/watchtower:auth branch to rosscado/watchtower hub 8 years ago
Ross Cadogan 6a56597d45 Refactor port mapping functions for build simplicity 8 years ago
Ross Cadogan e75236414e When authentication credentials are supplied as env vars they are always used.
This causes authentication failures on registries that don't match, including public registries.
Fallback to no-authentication to handle the case of public registries.
8 years ago
Ross Cadogan 541264281c Cannot load host Docker config from container. Remove option and rely on environment variables 8 years ago
Ross Cadogan 1c59200565 Registry authentication was failing silently when pulling images.
Load authentication credentials for available credential stores in order of preference:
 1. Environment variables REPO_USER, REPO_PASS
 2. Docker config files
Request image pull with authentication header.
Wait until pull request is complete before exiting function.
8 years ago
Ross Cadogan ef430b791a Add auth config, registry auth fails silently without 8 years ago
Ross Cadogan 44dbd88295 Merge branch 'auth' of github.com:rosscado/watchtower into auth
Conflicts:
	CONTRIBUTING.md
8 years ago
Ross Cadogan e8f6db2e05 Build instructions for contributors (because it's not obvious) 8 years ago
Ross Cadogan 2386d18660 Build instructions for contributors (because it's not obvious) 8 years ago
Ross Cadogan 8f137068d3 bdehamer/golang-builder doesn't work, use centurylink/golang-builder instead 8 years ago
Ross Cadogan 42fea79860 Rework TLS support, remove unsupported options 8 years ago
Ross Cadogan 69db640b98 godeps doesn't work, go without 8 years ago
Ross Cadogan 47718575ff godep doesn't work, distro required 8 years ago
Ross Cadogan 97214b2720 Consistent context 8 years ago
Ross Cadogan da9ba691f3 Updating dependencies with 8 years ago
Ross Cadogan b13e6af70f Migrate from codegangsta lib to urfave 8 years ago
Ross Cadogan 61ac18fce5 Ignore build output (watchtower binary) 8 years ago
Ross Cadogan e011d3e0d2 Discard obsolete samalba/dockerclient library and dependent tests 8 years ago
Ross Cadogan ed035d6191 go fmt 8 years ago
Ross Cadogan 99ed959155 Port client lib from samalba/dockerclient to docker/docker/client 8 years ago
Ross Cadogan 25f1fee8e2 Private registry authentication distinct from host 8 years ago
Ross Cadogan 02bca8d6a4 Improve error reporting 8 years ago
Ross Cadogan c4efc83875 Improve error handling 8 years ago
Ross Cadogan 875efba1d5 Reinstate MAINTAINER and LABEL, Ubuntu base image required by dockerclient upgrade 8 years ago
Ross Cadogan 936928f7f0 Migrate Godeps/_workspace/ to vendor/ 8 years ago
David Gardner b3d83f99fe Merge pull request #13 from drud/master
Allow private image pulls
9 years ago
Erin Corson c8bb6c349d readme update 9 years ago
Erin Corson d36899dd7c parameterize repo auth 9 years ago
Erin Corson 337db1d458 merge resolution 9 years ago
Erin Corson f5801669ab updates 9 years ago
Erin Corson b1e70f494e will not compile without these updates due to change in docker lib 9 years ago
Harry Walter a74bc9b1b8 Fix env name 9 years ago
Harry Walter ac7375a1da Skip restarting 9 years ago
Harry Walter ad32d1c677 Setup using env vars as well. Add no retsart option 9 years ago
Brian DeHamer 2c0a9fa3d2 Minor README edits 9 years ago
Brian DeHamer 7cf2d7f1d8 Support Zodiac-based deployments
Since Zodiac always uses image IDs for deployments we can relay on the
standard container image field to determine the image that was used to
start the container. Luckily, Zodiac writes the original image name to a
label in the container metadata. If we find that Zodiac-specific label
on a running container we will use the associated value when trying to
determine if the container's image has changed.
9 years ago
Brian DeHamer a238521fc4 Configure hound 9 years ago
Brian DeHamer b0910ee20b Add support for whitelist of monitored containers 9 years ago
Brian DeHamer d6321bf8dc Add godoc comments 9 years ago
Brian DeHamer 058d6e5507 Turn DockerClient into dockerClient
No need to export this particular struct since we already have a public
Client interface available and a NewClient function which can be used to
instantiate the concrete struct.
9 years ago
Brian DeHamer dd80aa4a0d Support for --cleanup flag
The --cleanup flag will cause watchtower to automatically remove the old
image after a container is restart with a new image.
9 years ago
Brian DeHamer b8ba80df2d Update MAINTAINER email in Dockerfile 9 years ago
Brian DeHamer 0852ad12c5 Create LICENSE 9 years ago
Brian DeHamer 8636f6fb6b Add README content 9 years ago
Brian DeHamer 812fb60805 Handle errors without halting
If we receive an error while trying to shutdown/startup a particular
container we don't want to immediately terminate the current update
cycle. Instead we should continue processing the remaining containers
and simply log the error.
9 years ago
Brian DeHamer e21c21ec3b Account for latency in container removal
Under certain conditions when watchtower is monitoring a Docker Swarm
cluster there would be cases where an updated container could not be
started because the old hadn't yet been removed (name conflicts, mapped
port conflicts, etc). We suspect that this has something to do with the
async nature of swarm and even though we've asked the swarm master to
remove a container it may not be completely removed from the associated
node. The fix is to do some polling after the remove container call to
ensure that the container is truly gone before proceeding.
9 years ago