mirror of
https://github.com/mag37/dockcheck.git
synced 2026-04-18 02:17:46 +00:00
Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
37052d1377 | ||
|
|
2c04644b09 | ||
|
|
ca787d7754 |
22
README.md
22
README.md
@@ -67,7 +67,7 @@ Example: dockcheck.sh -y -x 10 -d 10 -e nextcloud,heimdall
|
||||
|
||||
Options:
|
||||
-a|y Automatic updates, without interaction.
|
||||
-b N Enable image backups and sets number of days to keep from pruning.
|
||||
-b N Enable image backups and sets number of days to keep from pruning. Ignores -p auto-prune.
|
||||
-B List currently backed up images, then exit.
|
||||
-c D Exports metrics as prom file for the prometheus node_exporter. Provide the collector textfile directory.
|
||||
-d N Only update to new images that are N+ days old. Lists too recent with +prefix and age. 2xSlower.
|
||||
@@ -81,7 +81,7 @@ Options:
|
||||
-m Monochrome mode, no printf colour codes and hides progress bar.
|
||||
-M Prints custom releasenote urls as markdown (requires template support).
|
||||
-n No updates, only checking availability.
|
||||
-p Auto-Prune dangling images after update.
|
||||
-p Auto-Prune dangling images after update. Ignored when -b is used.
|
||||
-r Allow checking/updating images created by `docker run`, containers need to be recreated manually.
|
||||
-R Skip container recreation after pulling images.
|
||||
-s Include stopped containers, returns to stopped state after recreation.
|
||||
@@ -238,19 +238,19 @@ Further additions are welcome - suggestions or PRs!
|
||||
All required environment variables for each notification channel are provided in the default.config file as comments and must be uncommented and modified for your requirements.
|
||||
For advanced users, additional functionality is available via custom configurations and environment variables.
|
||||
Use cases - all configured in `dockcheck.config`:
|
||||
(replace `<channel>` with the upper case name of the of the channel as listed in
|
||||
(replace `<CHANNEL>` with the upper case name of the of the channel as listed in
|
||||
`NOTIFY_CHANNELS` variable, eg `TELEGRAM_SKIPSNOOZE`)
|
||||
|
||||
- To bypass the snooze feature, even when enabled, add the variable `<channel>_SKIPSNOOZE` and set it to `true`.
|
||||
- To configure the channel to only send container update notifications, add the variable `<channel>_CONTAINERSONLY` and set it to `true`.
|
||||
- To send notifications even when there are no updates available, add the variable `<channel>_ALLOWEMPTY` and set it to `true`.
|
||||
- To use another notification output format, add the variable `<channel>_OUTPUT` and set it to `csv`, `json`, or `text`. If unset or set to an invalid value, defaults to `text`.
|
||||
- To bypass the snooze feature, even when enabled, add the variable `<CHANNEL>_SKIPSNOOZE` and set it to `true`.
|
||||
- To configure the channel to only send container update notifications, add the variable `<CHANNEL>_CONTAINERSONLY` and set it to `true`.
|
||||
- To send notifications even when there are no updates available, add the variable `<CHANNEL>_ALLOWEMPTY` and set it to `true`.
|
||||
- To use another notification output format, add the variable `<CHANNEL>_OUTPUT` and set it to `csv`, `json`, or `text`. If unset or set to an invalid value, defaults to `text`.
|
||||
- To send multiple notifications using the same notification template:
|
||||
- Strings in the `NOTIFY_CHANNELS` list are now treated as unique names and do not necessarily refer to the notification template that will be called, though they do by default.
|
||||
- Add another notification channel to `NOTIFY_CHANNELS` in `dockcheck.config`. The name can contain upper and lower case letters, numbers and underscores, but can't start with a number.
|
||||
- Add the variable `<channel>_TEMPLATE` to `dockcheck.config` where `<channel>` is the name of the channel added above and set the value to an available notification template script (`slack`, `apprise`, `gotify`, etc.)
|
||||
- Add all other environment variables required for the chosen template to function with `<channel>` in upper case as the prefix rather than the template name.
|
||||
- For example, if `<channel>` is `mynotification` and the template configured is `slack`, you would need to set `MYNOTIFICATION_CHANNEL_ID` and `MYNOTIFICATION_ACCESS_TOKEN`.
|
||||
- Add the variable `<CHANNEL>_TEMPLATE` to `dockcheck.config` where `<CHANNEL>` is the name of the channel added above and set the value to an available notification template script (`slack`, `apprise`, `gotify`, etc.)
|
||||
- Add all other environment variables required for the chosen template to function with `<CHANNEL>` in upper case as the prefix rather than the template name.
|
||||
- For example, if `<CHANNEL>` is `mynotification` and the template configured is `slack`, you would need to set `MYNOTIFICATION_CHANNEL_ID` and `MYNOTIFICATION_ACCESS_TOKEN`.
|
||||
|
||||
#### Release notes addon
|
||||
|
||||
@@ -295,6 +295,8 @@ The backed up images will be removed if they're older than *BackupForDays* value
|
||||
If configured for eg. 7 days, force earlier cleaning by just passing a lower number of days, eg. `-b 2` to clean everything older than 2 days.
|
||||
Backed up images will not be removed if neither `-b` flag nor `BackupForDays` config variable is set.
|
||||
|
||||
When backups are enabled, the `-p` auto-prune option is ignored to preserve backed up images.
|
||||
|
||||
Use the capital option `-B` to list currently backed up images. Or list all images with `docker images`.
|
||||
To manually remove any backed up images, do `docker rmi dockcheck/homer:2025-10-26_1132_latest`.
|
||||
|
||||
|
||||
@@ -51,6 +51,7 @@
|
||||
# pbul://o.gn5kj6nfhv736I7jC3cj3QLRiyhgl98b
|
||||
# tgram://{bot_token}/{chat_id}/'
|
||||
# APPRISE_URL="http://apprise.mydomain.tld:1234/notify/apprise"
|
||||
# APPRISE_TAG="one_tag,othertag" # Only works with the URL API and need to setup tags within Apprise
|
||||
#
|
||||
# BARK_KEY="key-value"
|
||||
#
|
||||
|
||||
@@ -34,7 +34,7 @@ Help() {
|
||||
echo
|
||||
echo "Options:"
|
||||
echo "-a|y Automatic updates, without interaction."
|
||||
echo "-b N Enable image backups and sets number of days to keep from pruning."
|
||||
echo "-b N Enable image backups and sets number of days to keep from pruning. Ignores -p auto-prune."
|
||||
echo "-B List currently backed up images, then exit."
|
||||
echo "-c D Exports metrics as prom file for the prometheus node_exporter. Provide the collector textfile directory."
|
||||
echo "-d N Only update to new images that are N+ days old. Lists too recent with +prefix and age. 2xSlower."
|
||||
@@ -48,7 +48,7 @@ Help() {
|
||||
echo "-m Monochrome mode, no printf colour codes and hides progress bar."
|
||||
echo "-M Prints custom releasenote urls as markdown (requires template support)."
|
||||
echo "-n No updates; only checking availability without interaction."
|
||||
echo "-p Auto-prune dangling images after update."
|
||||
echo "-p Auto-prune dangling images after update. Ignored when -b is used."
|
||||
echo "-r Allow checking/updating images created by 'docker run', containers need to be recreated manually."
|
||||
echo "-R Skip container recreation after pulling images."
|
||||
echo "-s Include stopped containers, returns to stopped state after recreation."
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
### DISCLAIMER: This is a third party addition to dockcheck - best effort testing.
|
||||
NOTIFY_APPRISE_VERSION="v0.4"
|
||||
NOTIFY_APPRISE_VERSION="v0.5"
|
||||
#
|
||||
# Required receiving services must already be set up.
|
||||
# Leave (or place) this file in the "notify_templates" subdirectory within the same directory as the main dockcheck.sh script.
|
||||
@@ -35,17 +35,12 @@ trigger_apprise_notification() {
|
||||
fi
|
||||
fi
|
||||
|
||||
# e.g. APPRISE_PAYLOAD='mailto://myemail:mypass@gmail.com
|
||||
# mastodons://{token}@{host}
|
||||
# pbul://o.gn5kj6nfhv736I7jC3cj3QLRiyhgl98b
|
||||
# tgram://{bot_token}/{chat_id}/'
|
||||
|
||||
if [[ -n "${!AppriseUrlVar:-}" ]]; then
|
||||
AppriseURL="${!AppriseUrlVar}"
|
||||
curl -S -o /dev/null ${CurlArgs} -X POST -F "title=$MessageTitle" -F "body=$MessageBody" -F "tags=all" $AppriseURL # e.g. APPRISE_URL=http://apprise.mydomain.tld:1234/notify/apprise
|
||||
curl -S -o /dev/null ${CurlArgs} -X POST -F "title=$MessageTitle" -F "body=$MessageBody" -F "tags=${APPRISE_TAG:-all}" "$AppriseURL"
|
||||
|
||||
if [[ $? -gt 0 ]]; then
|
||||
NotifyError=true
|
||||
fi
|
||||
fi
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,33 +2,61 @@
|
||||
# Modify, add and (if necessary) remove to fit your needs.
|
||||
# This is a list of container names and releasenote urls, separated by space.
|
||||
|
||||
13ft https://github.com/wasi-master/13ft/releases
|
||||
actual_server https://actualbudget.org/blog
|
||||
adguardhome https://github.com/AdguardTeam/AdGuardHome/releases
|
||||
adminer https://github.com/TimWolla/docker-adminer/releases
|
||||
aiostreams https://github.com/Viren070/AIOStreams/releases
|
||||
altmount https://github.com/javi11/altmount/releases
|
||||
apprise-api https://github.com/linuxserver/docker-apprise-api/releases
|
||||
audiobookshelf https://github.com/advplyr/audiobookshelf/releases
|
||||
authentik_server https://github.com/goauthentik/authentik/releases
|
||||
authentik_worker https://github.com/goauthentik/authentik/releases
|
||||
autobrr https://github.com/autobrr/autobrr/releases
|
||||
barassistant https://github.com/karlomikus/bar-assistant//releases
|
||||
barassistant_api https://github.com/karlomikus/bar-assistant/releases
|
||||
bazarr https://github.com/morpheus65535/bazarr/releases
|
||||
bazarr-ls https://github.com/linuxserver/docker-bazarr/releases
|
||||
bentopdf https://github.com/alam00000/bentopdf/releases
|
||||
beszel https://github.com/henrygd/beszel/releases
|
||||
booklore https://github.com/booklore-app/BookLore/releases
|
||||
bookstack https://github.com/BookStackApp/BookStack/releases
|
||||
boxarr https://github.com/iongpt/boxarr/releases
|
||||
bruceforce-vaultwarden-backup https://github.com/Bruceforce/vaultwarden-backup/blob/main/CHANGELOG.md
|
||||
byparr https://github.com/ThePhaseless/Byparr/releases
|
||||
caddy https://github.com/caddyserver/caddy/releases
|
||||
cadvisor https://github.com/google/cadvisor/releases
|
||||
calibre https://github.com/linuxserver/docker-calibre/releases
|
||||
calibre-web https://github.com/linuxserver/docker-calibre-web/releases
|
||||
calibre-web-automated https://github.com/crocodilestick/Calibre-Web-Automated/releases
|
||||
chadburn https://github.com/PremoWeb/chadburn/releases
|
||||
checkrr https://github.com/aetaric/checkrr/releases
|
||||
cinesync https://github.com/sureshfizzy/CineSync/releases
|
||||
cleanuperr https://github.com/flmorg/cleanuperr/releases
|
||||
cloudflare-bypass https://github.com/sarperavci/CloudflareBypassForScraping/releases
|
||||
collabora https://github.com/CollaboraOnline/online/releases
|
||||
comet https://github.com/g0ldyy/comet/releases
|
||||
configarr https://github.com/raydak-labs/configarr/releases
|
||||
cronmaster https://github.com/fccview/cronmaster/releases
|
||||
cross-seed https://github.com/cross-seed/cross-seed/releases
|
||||
crowdsec https://github.com/crowdsecurity/crowdsec/releases
|
||||
cup https://github.com/sergi0g/cup/releases
|
||||
daps https://github.com/drazzilb08/daps/releases
|
||||
dashbrr https://github.com/autobrr/dashbrr/releases
|
||||
databasus https://github.com/databasus/databasus/releases
|
||||
decypharr https://github.com/sirrobot01/decypharr/releases
|
||||
dispatcharr https://github.com/Dispatcharr/Dispatcharr/releases
|
||||
diun https://github.com/crazy-max/diun/releases
|
||||
dlproxy https://github.com/Pukabyte/dlproxy/releases
|
||||
docker-db-auto-backup https://github.com/RealOrangeOne/docker-db-auto-backup/releases
|
||||
dockerproxy https://github.com/Tecnativa/docker-socket-proxy/releases
|
||||
dockge https://github.com/louislam/dockge/releases
|
||||
dozzle https://github.com/amir20/dozzle/releases
|
||||
dumb https://github.com/I-am-PUID-0/DUMB/releases
|
||||
esphome https://github.com/esphome/esphome/releases
|
||||
feishin https://github.com/jeffvli/feishin/releases
|
||||
flarebypasser https://github.com/yoori/flare-bypasser/releases
|
||||
flaresolverr https://github.com/FlareSolverr/FlareSolverr/releases
|
||||
flatnotes https://github.com/dullage/flatnotes/releases
|
||||
forgejo https://codeberg.org/forgejo/forgejo/releases
|
||||
fressrss https://github.com/FreshRSS/FreshRSS/releases
|
||||
@@ -50,6 +78,7 @@ immich_postgres https://github.com/tensorchord/VectorChord/releases
|
||||
immich_redis https://github.com/valkey-io/valkey/releases
|
||||
immich_server https://github.com/immich-app/immich/releases
|
||||
jellyfin https://github.com/jellyfin/jellyfin/releases
|
||||
jellyfin-auto-collections https://github.com/ghomasHudson/Jellyfin-Auto-Collections/releases
|
||||
jellyseerr https://github.com/Fallenbagel/jellyseerr/releases
|
||||
jellystat https://github.com/CyferShepard/Jellystat/releases
|
||||
karakeep https://github.com/karakeep-app/karakeep/releases
|
||||
@@ -59,47 +88,72 @@ lidarr-ls https://github.com/linuxserver/docker-lidarr/releases
|
||||
lubelogger https://github.com/hargata/lubelog/releases
|
||||
mattermost https://github.com/mattermost/mattermost/releases
|
||||
mealie https://github.com/mealie-recipes/mealie/releases
|
||||
mediathekarr https://github.com/PCJones/MediathekArr/releases
|
||||
meilisearch https://github.com/meilisearch/meilisearch/releases
|
||||
monica https://github.com/monicahq/monica/releases
|
||||
mqtt https://github.com/eclipse/mosquitto/tags
|
||||
n8n https://github.com/n8n-io/n8n/releases
|
||||
navidrome https://github.com/navidrome/navidrome/releases
|
||||
newt https://github.com/fosrl/newt/releases
|
||||
nextcloud-aio-mastercontainer https://github.com/nextcloud/all-in-one/releases
|
||||
nginx https://github.com/docker-library/official-images/blob/master/library/nginx
|
||||
notifiarr https://github.com/Notifiarr/notifiarr/releases
|
||||
nzbdav https://github.com/nzbdav-dev/nzbdav/releases
|
||||
ofelia https://github.com/mcuadros/ofelia/releases
|
||||
onthespot https://github.com/justin025/onthespot/releases
|
||||
opencloud https://github.com/opencloud-eu/opencloud/releases
|
||||
outline https://github.com/outline/outline/releases
|
||||
owncast https://github.com/owncast/owncast/releases
|
||||
pangolin https://github.com/fosrl/pangolin/releases
|
||||
placeholdarr https://github.com/TheIndieArmy/placeholdarr/releases
|
||||
postgresus https://github.com/RostislavDugin/postgresus/releases
|
||||
profilarr https://github.com/Dictionarry-Hub/profilarr/releases
|
||||
prowlarr https://github.com/Prowlarr/Prowlarr/releases
|
||||
prowlarr-ls https://github.com/linuxserver/docker-prowlarr/releases
|
||||
qbittorrent https://www.qbittorrent.org/news
|
||||
qbittorrent-nox https://www.qbittorrent.org/news
|
||||
radarr https://github.com/Radarr/Radarr/releases/
|
||||
radarr-ls https://github.com/linuxserver/docker-radarr/releases
|
||||
rclone-manager https://github.com/iPromKnight/rclone-manager/releases
|
||||
rdtclient https://github.com/rogerfar/rdt-client/releases
|
||||
readarr https://github.com/Readarr/Readarr/releases
|
||||
readeck https://codeberg.org/readeck/readeck/releases
|
||||
recyclarr https://github.com/recyclarr/recyclarr/releases
|
||||
redis https://github.com/redis/redis/releases
|
||||
roundcubemail https://github.com/roundcube/roundcubemail/releases
|
||||
sabnzbd https://github.com/linuxserver/docker-sabnzbd/releases
|
||||
scannarr https://github.com/Pukabyte/scannarr/releases
|
||||
scanopy https://github.com/scanopy/scanopy/releases
|
||||
scoutarr https://github.com/SuFxGIT/scoutarr/releases
|
||||
scrutiny https://github.com/AnalogJ/scrutiny/releases
|
||||
seerr https://github.com/seerr-team/seerr/releases
|
||||
sftpgo https://github.com/drakkan/sftpgo/releases
|
||||
shelfmark https://github.com/calibrain/shelfmark/releases
|
||||
slskd https://github.com/slskd/slskd/releases
|
||||
snappymail https://github.com/the-djmaze/snappymail/releases
|
||||
stirling-pdf https://github.com/Stirling-Tools/Stirling-PDF/releases
|
||||
sonarr https://github.com/Sonarr/Sonarr/releases/
|
||||
sonarr-ls https://github.com/linuxserver/docker-sonarr/releases
|
||||
sortarr https://github.com/Jaredharper1/Sortarr/releases
|
||||
stacks https://github.com/zelestcarlyone/stacks/releases
|
||||
stash https://github.com/stashapp/stash/releases
|
||||
stirling-pdf https://github.com/Stirling-Tools/Stirling-PDF/releases
|
||||
stremio-iptv-addon https://github.com/Inside4ndroid/M3U-XCAPI-EPG-IPTV-Stremio/releases
|
||||
stremioserver https://github.com/Stremio/server-docker/releases
|
||||
synapse https://github.com/element-hq/synapse/releases
|
||||
syncthing https://github.com/syncthing/syncthing/releases
|
||||
tailscale https://github.com/tailscale/tailscale/releases
|
||||
tautulli https://github.com/Tautulli/Tautulli/releases
|
||||
thelounge https://github.com/thelounge/thelounge/releases
|
||||
traefik https://github.com/traefik/traefik/releases
|
||||
umlautadaptarr https://github.com/PCJones/UmlautAdaptarr/releases
|
||||
uptime-kuma https://github.com/louislam/uptime-kuma/releases
|
||||
vaultwarden-server https://github.com/dani-garcia/vaultwarden/releases
|
||||
vikunja https://github.com/go-vikunja/vikunja/releases
|
||||
wallos https://github.com/ellite/Wallos/releases
|
||||
watchstate https://github.com/arabcoders/watchstate/releases
|
||||
watchtower https://github.com/beatkind/watchtower/releases
|
||||
wopiserver https://github.com/cs3org/wopiserver/releases
|
||||
wud https://github.com/getwud/wud/releases
|
||||
yamtrack https://github.com/FuzzyGrim/Yamtrack/releases
|
||||
zigbee2mqtt https://github.com/Koenkk/zigbee2mqtt/releases
|
||||
zilean https://github.com/iPromKnight/zilean/releases
|
||||
|
||||
Reference in New Issue
Block a user