מה זה DEVOPS
-
@ayali אני משער ש'טכנולוגיית מכולות' מתכוונים לקונטיינרים - לדוגמא דוקר docker שזה המושכל ראשון שעולה מייד כשמדברים על זה.
זה נושא גדול וענק (אגב לא קשור לשאלה בכותרת 'מה זה DEVOPS' שזה שאלה נפרדת שאני משער שתכתבי את השאלה בגוגל תקבלי תשובה מיידית) שמכיל מגוון אספקטים אבל בשביל ההתחלה כדאי פשוט ללמוד להרכיב באמת אימג' פשוטה של הפרוייקט בדוקר.
זה דבר שאולי נראה מסובך בהתחלה אבל ממש פשוט!דוקר זה כלי שבונה אימג'ים - קונטיינרים שבנויים מסוג-של-לינוקס מינימלי ביותר + תוספות לבחירה, כולל מערכת נטוורקינג ומערכת קבצים שהן וירטואליות פרטיות לקונטיינר וזמינות לתוכנה שרצה בתוכו, כאילו היה מערכת לינוקס רגילה.
הקונטיינר גם יכול לתקשר עם הבחוץ ולקבל משם קבצים, קריאות רשת, וכו'דוקר עובד באמצעות קובץ קונפיגורציה מסוים (כותבים קובץ עם השם Dockerfile בלי סיומת) שבתוכו מגדירים - על בסיס איזה אימג' לבנות את הקונטיינר, איזה קבצים להוסיף על האימג', (הקבצים של הפרוייקט שלך), איזה חבילות להתקין (כגון חבילות לינוקס להתממשק עם DB. לדוגמא), איזה פקודות להריץ מיד אחרי שהקונטיינר מורץ, לפני, אחרי, באמצע הבנייה של האימג' וכו'
חושב שהסברתי מספיק. צריך לקפוץ למים האלה כי זה דבר שהוא must להכיר (דוקר).
-
@ayali אמר במה זה DEVOPS:
@chv מה בעצם הרעיון של זה?
למה צריך לעשות את זה?במילים קצרות:
זה מספק לנו וירטואליזציה מושלמת, בלי הסחיטת משאבים של מכונה-וירטואלית רגילה (מערכת הפעלה)מה מספקת לנו וירטואליזציה מושלמת, במילים קצרות:
- isolation - בידוד (תהליכים, קוד מקור, רשת, מנועי-ריצה, חבילות-תלויות-וכדו')
- חלוקת, הקצאת ושליטה במשאבים מקסימלית
- ביטחון עצמי (שהקוד ירוץ נורמלי)
- האמת שביטחון עצמי הוא יותר תוצאה של שתי הראשונות
יש משהו שלא כתבתי?
-
לדעתי, הגדרה קולעת למה זה נצרך, היא א-תלותיות.
קונטיינרים מאפשרים כמה שיותר עצמאות לקוד ביחס לסביבת ריצה בפועל.החלק הראשון שצריך להכיר זה בנית התמונה.
שלב ראשון זה להכיר את מבנה הקובץ Dockerfile.
במשפט, זה קובץ הוראות שבעזרתו נדע מה ה"מערכת הפעלה" המקורית שממנה נתחיל (FROM ubuntu
) לדוג', איזה קבצים להוסיף, (ADD\COPY
) איזה פקודות להריץ כדי להכין את הסביבה לאפליקציה (RUN
) ולסיום איזה פקודה להריץ בשלב הריצה של התמונה (ENTRYPOINT\CMD
)(עריכה: אני רואה שchv הקדימני )
ממליץ לעבור על :
https://docs.docker.com/engine/reference/builder/
https://docs.docker.com/develop/develop-images/dockerfile_best-practices/
https://www.docker.com/blog/intro-guide-to-dockerfile-best-practices/יש הרבה מדריכים לסוג אפליקציות ספציפיות, ממליץ פשוט לגגל כדי לקבל מושג ראשוני. https://www.google.com/search?q=dockerizing+node+js+app
שלב שני זה להכיר את סביבות הריצה.
בתור התחלה - docker cli
https://docs.docker.com/engine/reference/commandline/cli/
מה שחשוב להכיר זה start, stop, restart, run ובעיקר להכיר את האופציות השונות של runשלב שלישי זה להכיר כלי ניהול לסביבות של מכולות.
בתור התחלה - docker-compose
בהמשך - kubenetes, openshiftמשמח לראות שהתחומים האלה כבר נכללים בתוכנית לימודים, מאוד מבאס ששולחים תלמידים לגגל מושגים בתרגום גרוע לעברית שקרוב לוודאי יסתיים בלי שום תוצאות רלוונטיות בגוגל
נ.ב. הייתי עורך את הכותרת ל"עזרה - הכרה ושימוש בקונטיינרים" או משהו דומה
-
@ayali אמר במה זה DEVOPS:
@aaron אתם מדברים על זה שזה פשוט וקל
אני לא מסתדרת אם יש למישהו זמן וכח לעזור לי אני ממש יודה לוכדאי לקרוא את המדריך שהבאתי בלינק הראשון
אני הורדתי את docker אבל הוא כל הזמן נפתח ואחרי כמה שניות כותב לי טעות ואז נסגר
צריך שיהיה מופעל בהגדרות אופציית וירטואליזציה וקונטיינרים
-
@ayali ההגדרות של הוירטואליזציה נמצאות בביוס (BIOS) של המחשב. כדי להכנס לשם צריך ללחוץ על מקש Del מיד עם הפעלת המחשב (לפעמים זה מקש F1 או Esc).
באופן כללי אתם אמורים לחפש שם קטגוריה בשם:
"Advanced / CPU Configuration"
ובתוכה את האפשרות "Virtualization". צריך להיות מסומן שם "Enabled".
הנה תמונה לדוגמא:
-
@ayali אמר במה זה DEVOPS:
@sh774 הקישור הזה חסום לי
אם אתה מסכים לפרט אשמח מאד
כי מה שהוא אמר אני לא מצליחה לא נפתח לי לא שלחצתי על DEL או
ESC או F1זה משתנה בין מחשב למחשב כדי שתפרטי חברה ודגם אפשר גם לחפש בגוגל בנוסף אמורים להפעיל קונטיינרים ב
windows features
https://www.dell.com/support/kbdoc/he-il/000148790/how-to-turn-windows-features-on-or-off-in-windows-7