הקמת אפליקציית Node.JS בענן של Azure DevOps
מייקרוסופט הפכה בשנים האחרונות לאחת מספקיות הענן הגדולות, יחד עם AWS וגוגל, וכמו כולם גם הם מחלקים שנה ראשונה מתנה למי שיירשם. החלטתי לקחת את ההצעה ולראות דרך כמה ניסויים איך מתנהג ה Azure DevOps בהשוואה למתחרים.
1. איך להרים שרת Node.JS בענן של מייקרוסופט
המשחק הראשון שלי היה להרים אפליקציית Node.JS בענן. את התוצאה אפשר לראות כאן: https://yo3333.azurewebsites.net/.
בגדול אתם מתחילים בהתקנת כלי ה CLI דרך המדריך הזה: https://docs.microsoft.com/en-us/cli/azure/install-azure-cli.
אחר כך יוצרים שרת בענן דרך המדריך הזה: https://docs.microsoft.com/en-us/azure/developer/javascript/tutorial/tutorial-vscode-azure-cli-node/tutorial-vscode-azure-cli-node-03.
ובסוף בשביל לחבר את האפליקציה בענן לקוד שלכם אתם מגדירים מאגר גיט מרוחק על Azure Devops ודוחפים אליו את הקוד. את הפקודות שמחברות מצאתי במדריך הזה: https://docs.microsoft.com/en-us/azure/developer/javascript/tutorial/tutorial-vscode-azure-cli-node/tutorial-vscode-azure-cli-node-04
סך כל הסיפור לקח לי פחות מחצי שעה.
2. מה אנחנו מקבלים
אחרי כל ההתקנות יש לי בתיקיית הפרויקט על המחשב חיבור למאגר המרוחק של Azure Devops:
$ git remote -v
azure https://ynonp-deploy@yo3333.scm.azurewebsites.net/yo3333.git (fetch)
azure https://ynonp-deploy@yo3333.scm.azurewebsites.net/yo3333.git (push)
כל פעם שאני משנה קוד ועושה push למאגר azure בצורה אוטומטית המכונה בענן של MS לוקחת את הקוד החדש, מפעילה npm install ומאתחלת את האפליקציה לגירסה החדשה. בלי מאמץ קיבלתי Zero Downtime Deployment ותיעוד מלא של פעולות ה Deploy בממשק הניהול.
3. למה לשים לב
במדריכים של מייקרוסופט החיבור שנוצר הוא לענף master במאגר המרוחק. בגיטהאב ענף ברירת המחדל נקרא main במאגרים חדשים. שימו לב אם אתם עובדים עם כמה מדריכים לא להתבלבל בשמות.
דבר נוסף הוא שבהתקנת כלי ה CLI הם מציעים סקריפט אוטומטי שעושה הכל. אצלי הוא לא עבד.
4. מה עוד נשאר לניסויים הבאים
עכשיו שיש לי אפליקציה ראשונה בענן יש המון דברים שיהיה מעניין לנסות:
איך מקימים בסיס נתונים ומתחברים אליו
איך מקימים Load Balancer ועושים Scale Up לאפליקציה
איך להשתמש במערכת הלוגים של Azure Devops
איך להשתמש במערכת הניטור של Azure Devops
איך להקים Micro Service נוסף (אולי בשפה אחרת) ולתקשר ביניהם
כמובן אמשיך לכתוב כאן גם על הניסויים הבאים. בינתיים כבר שמתי לב שממשק הניהול של Azure Devops נראה הרבה יותר פשוט מזה של AWS, אבל אולי זה בגלל שאני רק בתחילת הדרך שם.