Grocy extension: expiry alerts, multi-channel notifications & CalDAV sync. Self-hosted.
2.5K
Grocylink extends Grocy with automatic expiry alerts, multi-channel notifications and bidirectional CalDAV synchronization.
Self-hosted, offline-capable and fully under your control.
mkdir -p /path/to/grocylink/data
chown 1000:1000 /path/to/grocylink/data
services:
grocylink:
image: c42u/grocylink:latest
container_name: grocylink
restart: unless-stopped
user: "1000:1000"
cpus: "1.0"
pids_limit: 200
mem_limit: 2G
memswap_limit: 3G
oom_kill_disable: false
security_opt:
- no-new-privileges:true
cap_drop:
- ALL
environment:
GUNICORN_WORKERS: 2
TZ: Europe/Berlin
volumes:
- /path/to/grocylink/data:/app/data
ports:
- "5000:5000"
docker compose up -d
Grocylink is then accessible at http://localhost:5000.
Grocylink serves HTTP on port 5000. For HTTPS, use an external reverse proxy.
Caddy example:
grocylink.example.com {
reverse_proxy http://localhost:5000
}
Nginx example:
server {
listen 443 ssl;
server_name grocylink.example.com;
ssl_certificate /certs/fullchain.pem;
ssl_certificate_key /certs/key.pem;
location / {
proxy_pass http://localhost:5000;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
| Variable | Default | Description |
|---|---|---|
GUNICORN_WORKERS | 2 | Number of Gunicorn worker processes |
TZ | Europe/Berlin | Timezone for scheduler and logs |
All data is stored in /app/data inside the container:
| File | Description |
|---|---|
grocy_notify.db | SQLite database (settings, channels, logs) |
.encryption_key | Encryption key for passwords and API keys |
Important: The volume /app/data must be mounted so data survives restarts. Make sure to back up the .encryption_key - without it, stored credentials cannot be decrypted.
| Server | Path |
|---|---|
| Nextcloud | /remote.php/dav |
| Radicale | /radicale/ |
| Baikal | /baikal/html/dav.php |
| iCloud | - |
| RFC 6764 | /.well-known/caldav |
cap_drop: ALL)no-new-privileges)Grocylink erweitert Grocy um automatische Ablaufwarnungen, Multi-Channel-Benachrichtigungen und bidirektionale CalDAV-Synchronisation.
Self-hosted, offline-faehig und vollstaendig unter deiner Kontrolle.
mkdir -p /pfad/zu/grocylink/data
chown 1000:1000 /pfad/zu/grocylink/data
services:
grocylink:
image: c42u/grocylink:latest
container_name: grocylink
restart: unless-stopped
user: "1000:1000"
cpus: "1.0"
pids_limit: 200
mem_limit: 2G
memswap_limit: 3G
oom_kill_disable: false
security_opt:
- no-new-privileges:true
cap_drop:
- ALL
environment:
GUNICORN_WORKERS: 2
TZ: Europe/Berlin
volumes:
- /pfad/zu/grocylink/data:/app/data
ports:
- "5000:5000"
docker compose up -d
Grocylink ist dann erreichbar unter http://localhost:5000.
Grocylink stellt HTTP auf Port 5000 bereit. Fuer HTTPS einen externen Reverse Proxy vorschalten.
Caddy-Beispiel:
grocylink.example.com {
reverse_proxy http://localhost:5000
}
Nginx-Beispiel:
server {
listen 443 ssl;
server_name grocylink.example.com;
ssl_certificate /certs/fullchain.pem;
ssl_certificate_key /certs/key.pem;
location / {
proxy_pass http://localhost:5000;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
| Variable | Standard | Beschreibung |
|---|---|---|
GUNICORN_WORKERS | 2 | Anzahl Gunicorn Worker-Prozesse |
TZ | Europe/Berlin | Zeitzone fuer Scheduler und Logs |
Alle Daten werden in /app/data im Container gespeichert:
| Datei | Beschreibung |
|---|---|
grocy_notify.db | SQLite-Datenbank (Einstellungen, Kanaele, Logs) |
.encryption_key | Verschluesselungsschluessel fuer Passwoerter und API-Keys |
Wichtig: Das Volume /app/data muss gemountet sein, damit Daten einen Neustart ueberleben. Den .encryption_key unbedingt sichern - ohne ihn koennen gespeicherte Zugangsdaten nicht mehr entschluesselt werden.
| Server | Pfad |
|---|---|
| Nextcloud | /remote.php/dav |
| Radicale | /radicale/ |
| Baikal | /baikal/html/dav.php |
| iCloud | - |
| RFC 6764 | /.well-known/caldav |
cap_drop: ALL)no-new-privileges)Angaben gemäß § 5 DDG
Carsten Zucker c/o IP-Management #9060 Ludwig-Erhard-Straße 18 20459 Hamburg
Kontaktdaten: E-Mail: grocylink[at]c42u.de
USt-ID: DE309146063
Externe Links Diese Website enthält Verknüpfungen zu Websites Dritter ("externe Links"). Diese Websites unterliegen der Haftung der jeweiligen Betreiber. Der Anbieter hat bei der erstmaligen Verknüpfung der externen Links die fremden Inhalte daraufhin überprüft, ob etwaige Rechtsverstöße bestehen. Zu dem Zeitpunkt waren keine Rechtsverstöße ersichtlich. Der Anbieter hat keinerlei Einfluss auf die aktuelle und zukünftige Gestaltung und auf die Inhalte der verknüpften Seiten. Das Setzen von externen Links bedeutet nicht, dass sich der Anbieter die hinter dem Verweis oder Link liegenden Inhalte zu Eigen macht. Eine ständige Kontrolle der externen Links ist für den Anbieter ohne konkrete Hinweise auf Rechtsverstöße nicht zumutbar. Bei Kenntnis von Rechtsverstößen werden jedoch derartige externe Links unverzüglich gelöscht.
Verantwortlich für den Inhalt nach § 18 Abs. 2 MStV: Carsten Zucker
Haftung für Inhalte
Die Inhalte dieser Seiten wurden mit größter Sorgfalt erstellt. Für die Richtigkeit, Vollständigkeit und Aktualität der Inhalte kann jedoch keine Gewähr übernommen werden. Als Diensteanbieter bin ich gemäß § 7 Abs. 1 DDG für eigene Inhalte auf diesen Seiten nach den allgemeinen Gesetzen verantwortlich. Nach Art. 4 bis 6 der Verordnung (EU) 2022/2065 (Digital Services Act) bin ich als Diensteanbieter jedoch nicht verpflichtet, übermittelte oder gespeicherte fremde Informationen zu überwachen oder nach Umständen zu forschen, die auf eine rechtswidrige Tätigkeit hinweisen. Verpflichtungen zur Entfernung oder Sperrung der Nutzung von Informationen nach den allgemeinen Gesetzen bleiben hiervon unberührt. Eine diesbezügliche Haftung ist jedoch erst ab dem Zeitpunkt der Kenntnis einer konkreten Rechtsverletzung möglich. Bei Bekanntwerden von entsprechenden Rechtsverletzungen werde ich diese Inhalte umgehend entfernen.
Datenschutz https://docs.github.com/de/site-policy/privacy-policies/github-general-privacy-statement
Der Nutzung von im Rahmen der Impressumspflicht veröffentlichten Kontaktdaten durch Dritte zur Übersendung von nicht ausdrücklich angeforderter Werbung und Informationsmaterialien wird hiermit ausdrücklich widersprochen. Die Betreiber der Seiten behalten sich ausdrücklich rechtliche Schritte im Falle der unverlangten Zusendung von Werbeinformationen, etwa durch Spam-Mails, vor.
Content type
Image
Digest
sha256:1ae4b54ae…
Size
227.7 MB
Last updated
about 2 months ago
docker pull c42u/grocylink