DockerIL

Grocy – ERP beyond your fridge

Grocy - dockeril.net

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:

שימוש מועיל!

Exit mobile version