A Diun nevű progi (Docker Image Update Notifier) értesítést küld, ha a Docker registry-ben újabb verziójú kép érhető el annál, mint amit használunk.
A compose.yaml
konfig:
services:
diun:
image: crazymax/diun:latest
container_name: diun
restart: always
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ./data:/data
environment:
- TZ=${TIMEZONE}
- LOG_LEVEL=info
- LOG_JSON=false
- DIUN_PROVIDERS_DOCKER=true
- DIUN_PROVIDERS_DOCKER_WATCHBYDEFAULT=true
- DIUN_WATCH_SCHEDULE=${DIUN_WATCH_SCHEDULE}
- DIUN_NOTIF_MAIL_HOST=${DIUN_NOTIF_MAIL_HOST}
- DIUN_NOTIF_MAIL_PORT=${DIUN_NOTIF_MAIL_PORT}
- DIUN_NOTIF_MAIL_SSL=${DIUN_NOTIF_MAIL_SSL}
- DIUN_NOTIF_MAIL_USERNAME=${DIUN_NOTIF_MAIL_USERNAME}
- DIUN_NOTIF_MAIL_PASSWORD=${DIUN_NOTIF_MAIL_PASSWORD}
- DIUN_NOTIF_MAIL_TO=${DIUN_NOTIF_MAIL_TO}
- DIUN_NOTIF_MAIL_FROM=diun@myserver.home
command: serve
A watchByDefault beállítás miatt minden image-et figyel. Ha ezt nem akarjuk, akkor szolgáltatásonként kell megadnunk, mit figyeljen, címkék segítségével.
# egy tetszőleges compose.yaml
services:
# egy tetszőleges szolgáltatás
gluetun:
image: qmcgaw/gluetun
labels:
- diun.enable=true
# stb...
A változókhoz, titkokhoz a .env
:
TIMEZONE=Europe/Copenhagen
DIUN_WATCH_SCHEDULE="51 22 * * *"
DIUN_NOTIF_MAIL_HOST=smtp.eu.mailgun.org
DIUN_NOTIF_MAIL_PORT=587
DIUN_NOTIF_MAIL_SSL=false
DIUN_NOTIF_MAIL_USERNAME=postmaster@mail.mydomain.hu
DIUN_NOTIF_MAIL_PASSWORD=ezittkamujelszo
DIUN_NOTIF_MAIL_TO=idekeremazemailt@gmail.com
Létrehozzuk a szükséges mappákat, elindítjuk a szolgáltatást, majd kipróbáljuk az emailküldést.
$ chmod 600 .env
$ mkdir data
$ docker compose up -d
$ docker compose logs -f
$ docker compose exec diun diun notif test
$ docker compose down