Grocy הנה מערכת ERP לניהול רשימת קניות ותחזוקת הבית הכתובה בקוד פתוח וניתנת להתקנה כ Self Hosted על השרת הביתי שלכם או בענן. למערכת ממשק וובי נוח לשימוש המותאם גם לתצוגת מובייל.
במדריך זה אסביר כיצד להתקין את המערכת על סביבת docker-compose אך לפני שנתחיל יש לוודא כי התקנתם docker-compose על פי המדריך הבא.
שלב א' – התקנת המערכת על גבי docker-compose
על מנת להתקין את Grocy ערכו את קובץ ה docker-compose.yaml והוסיפו את השורות הבאות:
grocy:
image: linuxserver/grocy
container_name: grocy
environment:
- PUID={PUID}
- PGID={PGID}
- TZ={TZ}
volumes:
- ./grocy:/config
ports:
- 80:80
restart: unless-stopped
שמרו את הקובץ והריצו את הפקודה הבאה:
docker-compose up -d
במידה וההתקנה עברה בצורה תקינה, נוכל לראות כי נוסף קונטיינר נוסף למערכת:
כעת ניתן לפתוח את הדפדפן ולגלוש לכתובת השרת, ונקבל את מסך ההתחברות:
שלב ב' – בונוס – שימוש ב Traefik לצורך גישה למערכת מבחוץ
על מנת לאפשר גישה למערכת גם מחוץ לרשת הביתית, ניתן להשתמש ברשת Reverse Proxy. בחלק זה של המדריך אסביר כיצד ניתן ליישם זאת באמצעות Traefik עליו כתבתי בהרחבה כאן.
על מנת ליישם את השימוש ב Traefik יש להוסיף את השורות הבאות לקובץ ה docker-compose.yaml בהמשך להגדרות של grocy:
networks:
- default
- web
labels:
- "traefik.enable=true"
- "traefik.port=80"
- "traefik.frontend.rule=Host:grocy.domain.com"
- "traefik.docker.network=web"
- "traefik.frontend.headers.SSLRedirect=true"
- "traefik.frontend.headers.STSSeconds=315360000"
- "traefik.frontend.headers.browserXSSFilter=true"
- "traefik.frontend.headers.contentTypeNosniff=true"
- "traefik.frontend.headers.forceSTSHeader=true"
- "traefik.frontend.headers.SSLHost=grocy.domain.com"
- "traefik.frontend.headers.STSIncludeSubdomains=true"
- "traefik.frontend.headers.STSPreload=true"
- "traefik.frontend.headers.frameDeny=true"
- "com.centurylinklabs.watchtower.enable=true"
כך שבסופו של דבר הקובץ יראה כך:
grocy:
image: linuxserver/grocy
container_name: grocy
environment:
- PUID={PUID}
- PGID={PGID}
- TZ={TZ}
volumes:
- ./grocy:/config
ports:
- 9090:80
restart: unless-stopped
networks:
- default
- web
labels:
- "traefik.enable=true"
- "traefik.port=80"
- "traefik.frontend.rule=Host:grocy.domain.com"
- "traefik.docker.network=web"
- "traefik.frontend.headers.SSLRedirect=true"
- "traefik.frontend.headers.STSSeconds=315360000"
- "traefik.frontend.headers.browserXSSFilter=true"
- "traefik.frontend.headers.contentTypeNosniff=true"
- "traefik.frontend.headers.forceSTSHeader=true"
- "traefik.frontend.headers.SSLHost=grocy.domain.com"
- "traefik.frontend.headers.STSIncludeSubdomains=true"
- "traefik.frontend.headers.STSPreload=true"
- "traefik.frontend.headers.frameDeny=true"
- "com.centurylinklabs.watchtower.enable=true"
שמרו את הקובץ והריצו את הפקודה הבאה על מנת שהשינויים יכנסו לתוקף:
docker-compose up -d
במידה ופעולה עברה בצורה תקינה, נוכל לראות את grocy ב dashboard שך traefik:
שימוש מועיל!
Leave a Reply