added docker update scripts

This commit is contained in:
2026-07-16 01:39:12 -04:00
parent 44b0e2cb06
commit 592ee06cd9
4 changed files with 259 additions and 0 deletions
+41
View File
@@ -0,0 +1,41 @@
# docker-stacks-update
Finds all running Docker Compose stacks, pulls the latest images, and
restarts only the stacks that received updates.
## Requirements
- **docker** (with Compose v2 plugin — `docker compose`, not `docker-compose`)
- **jq** — used to parse the JSON output of `docker compose ls`
## Installation
Place the script anywhere in your `$PATH`, for example:
```bash
cp docker-stacks-update ~/.local/bin/
chmod +x ~/.local/bin/docker-stacks-update
```
## Usage
```bash
docker-stacks-update
```
Run from any directory — the script finds every running stack
system-wide using `docker compose ls`.
## What it does
1. **Discover** — lists all running stacks with `docker compose ls
--format json`
2. **Pull** — runs `docker compose pull` for each stack
3. **Detect** — checks whether any service image was actually
downloaded (not just "already up to date")
4. **Restart** — recreates containers with `docker compose up -d` only
for stacks that received new images
5. **Orphan cleanup** — any stack whose compose file(s) no longer exist
on disk is torn down automatically
6. **Report** — prints a summary showing updated (with service names),
unchanged, orphaned (removed), and failed stacks