1
Fork 0
No description
This repository has been archived on 2023-03-26. You can view files and clone it, but cannot push or open issues or pull requests.
Find a file
2020-10-06 09:31:57 +01:00
.github/workflows Init rust application 2020-10-05 14:36:41 +01:00
src Correctly terminate if parts of the process terminate 2020-10-05 21:51:26 +01:00
.gitignore Init rust application 2020-10-05 14:36:41 +01:00
Cargo.lock Add logger and verbose flag 2020-10-05 17:59:05 +01:00
Cargo.toml Add logger and verbose flag 2020-10-05 17:59:05 +01:00
LICENSE Initial commit 2020-10-05 14:33:05 +01:00
README.md Update README.md 2020-10-06 09:31:57 +01:00

compose-updater

CI

Simple command to enable updating docker-compose based applications.

If newer containers are available than those running, pull the new containers, and cycle the containers. Supports specifying multiple containers using globs, and multiple globs if necessary.

Features

  • Only cycle application if containers were updated (unless --force-cycle specified)
  • Don't try and update stopped containers (unless --force-pull specified)

"How does it work?"

  • List images
  • If there are images, pull (docker-compose pull)
  • List images again
  • If images list is different, cycle container (docker-compose down && docker-compose up -d)

"How's this different from pull and up -d?"

After writing this, turns out that docker-compose support doing most of this for you.

If there are existing containers for a service, and the services configuration or image was changed after the containers creation, docker-compose up picks up the changes by stopping and recreating the containers (preserving mounted volumes).

Therefore, you can easily achieve this by simply pulling each compose file, and running up -d. Which changes all this Rust into a handful of lines of Bash.