E-Mail-Anhänge automatisch via IMAP herunterladen – Multi-Account, Cron, Synology-ready
10K+
Docker-Container zum automatischen Herunterladen von E-Mail-Anhängen via IMAP. Basiert auf jamesridgway/attachment-downloader.
amd64 + arm64Erstelle eine accounts.yml:
global:
host: imap.example.com
filename_template: "{{ date }} {{ subject }} - {{ attachment_name }}"
accounts:
mein_account:
username: [email protected]
password: mein-passwort
folders:
- INBOX
docker run -d \
--name attachment-downloader \
--restart unless-stopped \
-e TZ=Europe/Berlin \
-e CRON_SCHEDULE="*/15 * * * *" \
-v /pfad/zu/config:/config:ro \
-v /pfad/zu/downloads:/downloads \
michis0806/attachment-downloader:latest
Oder mit docker-compose.yml:
services:
attachment-downloader:
image: michis0806/attachment-downloader:latest
container_name: attachment-downloader
restart: unless-stopped
mem_limit: 512m
environment:
- TZ=Europe/Berlin
- CRON_SCHEDULE=*/15 * * * *
volumes:
- ./config:/config:ro
- ./downloads:/downloads
Ordner anlegen auf der Synology (z.B. per File Station):
/volume1/docker/attachment-downloader/config/
/volume1/docker/attachment-downloader/downloads/
accounts.yml in den config/-Ordner legen (siehe oben)
Container Manager öffnen → Projekt → Erstellen
attachment-downloader/volume1/docker/attachment-downloaderdocker-compose.yml in diesen Ordner legen:services:
attachment-downloader:
image: michis0806/attachment-downloader:latest
container_name: attachment-downloader
restart: unless-stopped
mem_limit: 512m
environment:
- TZ=Europe/Berlin
- CRON_SCHEDULE=*/15 * * * *
volumes:
- /volume1/docker/attachment-downloader/config:/config:ro
- /volume1/docker/attachment-downloader/downloads:/downloads
Erstellen klicken – der Container wird heruntergeladen und gestartet
cd /volume1/docker/attachment-downloader
docker compose pull
docker compose up -d
Im Container Manager unter Container → attachment-downloader → Protokoll.
Oder per SSH:
docker logs -f attachment-downloader
Im Container Manager: Projekt → attachment-downloader → Aktion → Erstellen (Build).
Oder per SSH:
docker compose pull && docker compose up -d
| Variable | Default | Beschreibung |
|---|---|---|
CRON_SCHEDULE | */15 * * * * | Cron-Ausdruck für das Intervall |
TZ | Europe/Berlin | Zeitzone |
CONFIG_FILE | /config/accounts.yml | Pfad zur Config-Datei |
DOWNLOAD_DIR | /downloads | Basis-Download-Verzeichnis |
global:
host: imap.example.com # Standard-IMAP-Server
filename_template: "{{ date }} {{ subject }} - {{ attachment_name }}" # Standard-Dateiname
accounts:
user1:
username: [email protected]
password: geheim123
folders:
- INBOX
- Archive
user2:
username: [email protected]
password: geheim456
host: imap.anderer-server.de # Eigener Host überschreibt global
folders:
- INBOX
/downloads/
├── user1/
│ ├── 2025-01-15 Rechnung - Dokument.pdf
│ └── 2025-01-20 Vertrag - Anlage.pdf
├── user2/
│ └── ...
Pro Account wird ein Unterordner angelegt. Stamp-Files (.account_last.stamp) merken sich den letzten Lauf-Zeitpunkt für inkrementelle Downloads.
| Pfad | Beschreibung |
|---|---|
/config | Config-Verzeichnis mit accounts.yml (read-only empfohlen) |
/downloads | Zielverzeichnis für heruntergeladene Anhänge |
Content type
Image
Digest
sha256:b98b90c5b…
Size
60.8 MB
Last updated
5 months ago
docker pull michis0806/attachment-downloader