על מנת לאפשר הקמת את סביבת פיתוח עבור מערכת מג'נטו 2 אנו נדרשים לבצע את ההתקנות הבאות:
שימוש בBash הוא למעשה הוא חלק נדרש בניהול כל אפליקציית PHP שכן אפליקציית PHP רצה על שרתי Linux. חובה לבצע התקנה של רכיבי Linux ובפרט של מערכת ההפעלה Ubuntu על מנת לבצע פעולות נדרשות בהקמת סביבת פיתוח ואף בפעולות שוטפות כגון : ניהול מודולים , מחיקת cache , reindex , התקנה דרך הcomposer של עדכוני מג'נטו ומודולים צד שלישי , הפעלת מצב פרודקשן , ניהול מנהלי המערכת האדמין , ניהול קרונים , יצירת קבצים סטטיים ועוד פעולות רבות אחרות.
מתכנת מג'נטו נדרש לדעת שימוש בינוני בShell אחרת הפיתוח יתארך באופן משמעותי וכמובן שנזכיר את השימוש ב NPM ובקבצי grunt אשר מחייבים פקודות בתוך הshell כגון grunt watch ו Live Reload אשר מאפשר למפתח הפרונט-אנד פיתוח מהיר שבעת שמירת קובץ הcss נראה את השינוי באופן מיידי על הדפדפן.
1.יש לבצע התקנה של WSL 2 אשר מבצעת התקנת מערכת הפעלה של Ubuntu בתוך הWindows ולשם כך יש להוריד את מערכת ההפעלה מהקישור הבא : https://ubuntu.com/wsl .
נדרשות מספר פעולות על מנת לבצע התקנה אופטימלית של הWSL
א. יש להכנס אל תפריט האפשרויות של Windows features דרך שורת החיפוש
ב. יש לבצע הגדרה של הפיצ'רים הבאים :
1. רכיב Hyper – V (אופציונלי) – רכיב זה אחראי נותן מענה מהיר ומתקדם לחיבור מכונות וירטואליזציה אשר הוא נחוץ עבור הפרויקט של סביבת הפיתוח . שימוש בHyper-V ניתן אך ורק בגרסת Win pro והינו אופציונלי שכן לDocker יש וירטואליזציה משלו . קיימים מצבים שבחלק מהמחשבים אין תמיכה ברמת הBios מכיוון שהמחשבים יחסית ישנים ולכן בתחילת מומלץ להשאיר מכובה ורק לאחר התקנה מוצלחת – יש לפעיל בשנית.
+חובה להפעיל את רכיב הcontainers בנוסף
2. רכיב Windows Hypervisor Platform – מענה בסיסי לוירטואליזציה במערכת הWin וההתקשרות בין הdocker וה – WSL.
3. רכיב Virtual Machine Platform – רכיב זה למעשה מבצע הפעלה של כלל רכיבי הוירטואלזציה להקמת סביבות פיתוח לצורך מתן הרשאה ל Docker להקים סביבת פיתוח מורכבות.
4. רכיב Guarded Host (חייב להיות כבוי) – משמש בתור firewall על כלל המכונות הווירטואליות אשר מוקמות דרך ה WSL .
5. רכיב Services for NFS – משמש עבור סנכרון בין הקבצים אשר נמצאים בWSL אל הקבצים אשר נמצאים בDocker .
6. רכיב ה Subsystem For Linux – מאפשר את הקמת הWSL בתוך מערכת ההפעלה של הWIN.
2.המחשב יבצע restart וידרוש עדכון עבור הKernel שזוהי למעשה הליבה של הWSL https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi
3.יש לפתוח שוב את מערכת ההפעלה Ubuntu ולהקליד שם משתמש וסיסמא וכעת מותקנת סביבת Ubuntu רשמית בתוך הWin לצרכי פיתוח באופן כמעט זהה לכלל הפעולות שהיינו מבצעים בMac OS .
חשוב לבצע עדכון של הUbuntu באמצעות הפקודות הבאות:
apt list –upgradable
קישור להורדה :
https://www.microsoft.com/en-il/p/windows-terminal/9n0dx20hk701
בנוסף , מומלץ להתקין את הWindows terminal ולפתוח לשונית במצב Ubuntu כפי שניתן לראות בצילום מסך
נספחים:
הדוקומנטציה הרשמית של WSL
https://docs.microsoft.com/en-us/windows/wsl/
הדוקומנטציה הרשמית עבור Windows Terminal
Docker הוא פרויקט קוד פתוח של תוכנה המספקת שכבת הפשטה ואוטומציה להתקנת והרצת יישומים בתוך קונטיינרים (מכולות) המנוהלים על ידי וירטואליזציה ברמת מערכת ההפעלה על גבי Windows, macOS ו–Linux.[1]
מומלץ ללמוד לעומק מהו הDocker מכיוון שמדובר בכלי החזק ביותר וחברת מג'נטו העולמית ממליצה להשתמש בDocker בתור סביבת פיתוח ואף מחייבת להשתמש בdocker בסביבת הפרודקשן של גרסת הCommerce שלהם .
1. יש לבצע הרשמה והתחברות דרך האתר הרשמי
2. יש לבצע הורדה של Docker desktop
3. יש לבצע התקנה וכמובן לוודא התקנה של רכיבים עבור WSL
5. יש לוודא שב Resources יש את האפשרות של WSL מסומנת בתור ברירת מחדל וכמובן גם מערכת ההפעלה Ubuntu
סביבת הפיתוח של MarkShust היא נכון לעכשיו סביבת הפיתוח הפופולרית ביותר עבור פלטפורמת מג'נטו 2 אשר משתמשת בDocker ובWSL כדי ליצור קונטיינרים כגון : Elastic Search ,Redis , MySQL , PHP-7.4 FPM , App , MailHog על מנת לאפשר לסביבת הפיתוח לרוץ כפי שהיא רצה בשרת חיצוני אשר מותאם עבור מערכת מג'נטו 2 .
הפרויקט יושב תחת הrepo : https://github.com/markshust/docker-magento
1.יש להשתמש בWindows terminal ולהגיע למיקום דרך הBash להיכן שאנו רוצים שקבצי הפרויקט יוקמו.
2.יש להריץ את הפקודה :
curl -s https://raw.githubusercontent.com/markshust/docker-magento/master/lib/template | bash
פקודה זו למעשה יוצרת לנו את הקבצים הרלוונטית להקמת סביבת הפיתוח עבור מג'נטו 2
3. יש להריץ את הפקודה
bin/download 2.4.2
אשר תתן לנו את האפשרות להוריד containersעבור סביבת הפיתוח של מג'נטו 2 כולל התקנת הרכיבים עבור השרת אשר יאחסן את פלטפורמת מג'נטו 2 .
השלב הבא נדרש להביא את ה Access Keys שלנו מהאתר https://marketplace.magento.com/ באזור האישי על מנת להוריד את הpackages של מערכת מג'נטו 2 .
4. השלב הבא נדרש להביא את ה Access Keys שלנו מהאתר https://marketplace.magento.com/ באזור האישי על מנת להוריד את הpackages של מערכת מג'נטו 2 (תהליך זה ייקח כ10 דקות בזמן ריצה).
5.התקנת הpackages אשר הורדנו עבור מג'נטו 2 דורשים גם התקנה כמובן ועל מנת לבצע זאת יש להשתמש בפקודה
9. אופציה נוספת היא התקנת sample data אשר יכיל : מוצרים , לקוחות , באנרים ועוד . הפקודות שיש להריץ בתוך תיקיית הפרויקט הם :
bin/magento sampledata:deploy
bin/magento setup:upgrade
10. לאחר הרצת הפקודות , תהיה לנו התבנית הרשמית של מג'נטו 2 שהיא Luma עם תוכן הדמה לצורך בדיקות