No description
- Python 44.6%
- Shell 39.9%
- Dockerfile 15.5%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| cups | ||
| email2print | ||
| .env.example | ||
| .gitignore | ||
| docker-compose.yml | ||
| README.md | ||
📧➡️🖨️ Email2Print (Docker + CUPS)
Ein einfaches, selbstgehostetes System, um E-Mails automatisch auszudrucken.
👉 Unterstützt:
- Bilder (JPG, PNG, etc.)
- Office Dateien (DOCX, XLSX, PPTX, etc.)
Alles läuft vollständig in Docker – inklusive eigenem CUPS Printserver.
🚀 Features
-
📧 Automatisches Abrufen von E-Mails (IMAP)
-
🖨️ Direktes Drucken über CUPS
-
📄 Automatische Konvertierung:
- Bilder → PDF
- Office → PDF
-
🔁 Vollständig reproduzierbar via Docker
-
⚙️ Konfiguration über
.env -
🔒 Optional: Filter nach Ziel-E-Mail-Adresse
🧱 Architektur
E-Mail → email2print → CUPS → Drucker
📦 Voraussetzungen
- Docker
- Docker Compose
- Netzwerkzugriff auf den Drucker (IPP)
⚙️ Installation
1. Repository klonen
git clone https://github.com/DEIN-USERNAME/email2print.git
cd email2print
2. .env anpassen
cp .env.example .env
nano .env
3. Container starten
docker compose up -d --build
🧪 Test
Sende eine E-Mail mit Anhang an:
print@deinedomain.de
Unterstützte Dateien:
- PNG / JPG
- DOCX / XLSX / PPTX
👉 Der Anhang wird automatisch gedruckt.
🔧 Konfiguration
Drucker
PRINTER_NAME=Dell_Color_MFP_H625cdw
PRINTER_URI=ipp://192.168.2.39/ipp/
EMAIL_ACCOUNT=deinlogin@gmx.de
EMAIL_PASSWORD=deinpasswort
Optional: Zieladresse filtern
TARGET_EMAIL=print@deinedomain.de
Nur E-Mails an diese Adresse werden verarbeitet.
📁 Projektstruktur
.
├── docker-compose.yml
├── .env
├── .env.example
│
├── cups/
│ ├── Dockerfile
│ ├── cups-init.sh
│ └── printers.conf.template
│
└── email2print/
├── Dockerfile
├── print_email.py
└── convert_and_print.sh
🛠️ Unterstützte Formate
| Typ | Beispiele |
|---|---|
.pdf |
|
| Bilder | .jpg, .png, .gif, .bmp, .tiff, .webp |
| Dokumente | .docx, .xlsx, .pptx, .odt, .rtf, .txt, .csv |
🔒 Sicherheit (optional)
- Absender-Whitelist möglich
- Betrieb im internen Netzwerk empfohlen
- Kein öffentlicher Zugriff auf CUPS nötig
🧠 Hinweise
- Große Dateien können etwas Zeit benötigen
- LibreOffice läuft im Headless-Modus
- ImageMagick wird für Bildkonvertierung verwendet
🧾 Lizenz
MIT License
🙌 Beitrag
Pull Requests sind willkommen!
⭐ Support
Wenn dir das Projekt gefällt:
👉 Star da lassen 😄