1 00:00:00,000 --> 00:00:05,042 >> [השמעת מוסיקה] 2 00:00:05,042 --> 00:00:06,000 DAVID מלאן: בסדר. 3 00:00:06,000 --> 00:00:07,630 תודה רבה לך שבאת. 4 00:00:07,630 --> 00:00:11,850 זהו סמינר CS50 על דוקר, טכנולוגיה שאנחנו בעצמנו וCS50 5 00:00:11,850 --> 00:00:13,392 החל להשתמש כבר כמה זמן. 6 00:00:13,392 --> 00:00:15,766 אז השם שלי הוא דוד מלאן, אני ללמד מבוא של הרווארד 7 00:00:15,766 --> 00:00:16,671 למדעי מחשב. 8 00:00:16,671 --> 00:00:18,670 די הרבה שנים, אנחנו כבר לתת לתלמידים 9 00:00:18,670 --> 00:00:20,435 בצד הלקוח להורדה מכונות וירטואליות 10 00:00:20,435 --> 00:00:22,134 על שהם עושים סטי הבעיות שלהם. 11 00:00:22,134 --> 00:00:24,300 שיש לנו עכשיו את המעבר לסביבת ענן 12 00:00:24,300 --> 00:00:27,396 שבעצם משתמש בטכנולוגיה זו בשם דוקר, כך שכל CS50 13 00:00:27,396 --> 00:00:29,270 עכשיו יש להם תלמידים מכולות דוקר של 14 00:00:29,270 --> 00:00:31,180 שבקרוב תוכל לשמוע את כל העניין. 15 00:00:31,180 --> 00:00:33,740 >> יתר על כן, על השרת של CS50 אשכול צד, במשך שנים רבות 16 00:00:33,740 --> 00:00:35,290 אנחנו משתמשים בשרת הענן של אמזון. 17 00:00:35,290 --> 00:00:37,164 אנחנו רצים בודדים מכונות וירטואליות. 18 00:00:37,164 --> 00:00:40,330 גם זה, אנחנו כבר החלו לעבור ל הדברים האלה נקראים מכולות דוקר 19 00:00:40,330 --> 00:00:43,762 כך שכל היישומים שלנו הם עכשיו מבודד לחלוטין זה מזה. 20 00:00:43,762 --> 00:00:46,720 אז בשביל זה ועוד, מאפשר לי להציג את החברים שלנו, ניקו ומנה, 21 00:00:46,720 --> 00:00:48,574 מדוקר עצמו. 22 00:00:48,574 --> 00:00:49,740 ניקולה kabar: תודה, דוד. 23 00:00:49,740 --> 00:00:51,410 שלום לכולם. 24 00:00:51,410 --> 00:00:54,230 שמי ניקו וזה מנו. 25 00:00:54,230 --> 00:00:58,260 אנחנו מדוקרים. 26 00:00:58,260 --> 00:01:02,240 אנחנו הולכים לדבר על-- נותן לך חבר 'מבוא לדוקר, 27 00:01:02,240 --> 00:01:08,100 ואנו מקווים, לקראת הסוף דיבורים זה אתה יכול להבין 28 00:01:08,100 --> 00:01:12,890 כמה אתה יכול להשתמש ברופא ל אוקסלט פיתוח היישומים שלך 29 00:01:12,890 --> 00:01:14,200 ופריסה. 30 00:01:14,200 --> 00:01:21,250 >> אז, אנחנו הולכים להתחיל אמיתיים מהיר עם קצת רקע. 31 00:01:21,250 --> 00:01:22,750 תאר מה הוא דוקר כל העניין. 32 00:01:22,750 --> 00:01:25,490 איך זה עובד? 33 00:01:25,490 --> 00:01:27,400 איך זה הארכיטקטורה? 34 00:01:27,400 --> 00:01:29,360 אני עושה כמה הדגמות. 35 00:01:29,360 --> 00:01:35,070 ומנה הולך להיות מתאר כיצד ניתן להשתמש בדוקר 36 00:01:35,070 --> 00:01:37,720 ונותן לך צעדים ספציפיים איך אתה יכול להתחיל. 37 00:01:37,720 --> 00:01:41,490 >> אני אעריך אם אתם יכולים להחזיק לשאלות שלך לקראת הסוף. 38 00:01:41,490 --> 00:01:46,800 בדרך זו, יכול להיות שאני פונה אלה שאלות בכל המצגת. 39 00:01:46,800 --> 00:01:52,150 אז נשאיר קצת זמן לקראת הסוף לשאלות. 40 00:01:52,150 --> 00:01:55,170 >> אז פשוט אמיתי מהיר, שיש לו למעשה אי פעם עבד על דוקר, 41 00:01:55,170 --> 00:01:56,850 כמו שיחק עם זה? 42 00:01:56,850 --> 00:01:58,000 מדהים. 43 00:01:58,000 --> 00:01:58,520 מגניב. 44 00:01:58,520 --> 00:01:59,817 גדול. 45 00:01:59,817 --> 00:02:01,525 אז, אני הולך להתחיל עם קצת היסטוריה. 46 00:02:01,525 --> 00:02:04,350 47 00:02:04,350 --> 00:02:09,820 אז בחזרה בשנתי ה -90 ו תחילת שנות ה -2000, בעצם 48 00:02:09,820 --> 00:02:16,940 כמפתחי אינטרנט, מפתחי אפליקציות, כשהם הלכו לפריסת יישום 49 00:02:16,940 --> 00:02:19,350 זה היה קשור ללחשוף מתכת. 50 00:02:19,350 --> 00:02:20,860 זה היה שרת אחד. 51 00:02:20,860 --> 00:02:22,870 זה היה יישום אחד. 52 00:02:22,870 --> 00:02:25,260 >> באופן מסורתי, דוגמא היה כמו ערימת LAMP להיות, 53 00:02:25,260 --> 00:02:30,630 שבו אתה באמת צריך להביא את הבריכה של משאבים. 54 00:02:30,630 --> 00:02:37,110 מעבד, זיכרון, דיסק, רשת, התקנה מערכת הפעלה על גבי זה. 55 00:02:37,110 --> 00:02:40,060 אם אתה משרת משהו, אם אתה בעצם יש שרת אינטרנט, 56 00:02:40,060 --> 00:02:42,470 אתה צריך משהו כמו Apache לשרת אותו. 57 00:02:42,470 --> 00:02:47,540 >> אם בקשתך צריך מסד נתונים, חבטת גב יד, 58 00:02:47,540 --> 00:02:50,840 היית להתקין משהו כמו MySQL, וכן הלאה. 59 00:02:50,840 --> 00:02:55,910 ואם אתה צריך זמן הריצה, PHPs ועבודת PHP פיתון היו שם. 60 00:02:55,910 --> 00:02:59,480 וכך אנחנו בעצם היו ל לקחת אותם הצעדים כדי 61 00:02:59,480 --> 00:03:02,060 כדי לקבל היישום והפעלה שלך. 62 00:03:02,060 --> 00:03:08,440 >> אם אתה זקוק לכוח מחשוב יותר, אתה בעצם הייתי צריך להתקשר בחור Ops שלך 63 00:03:08,440 --> 00:03:16,260 או הבחורה ללכת ולצבור חדש פיסת החומרה, לחבר אותו, 64 00:03:16,260 --> 00:03:19,850 ואתה צריך לחזור על אותם תהליכים שוב ושוב. 65 00:03:19,850 --> 00:03:23,680 אז תהליך זה היה יקר יחסית. 66 00:03:23,680 --> 00:03:26,080 היה בהחלט איטי מאוד. 67 00:03:26,080 --> 00:03:27,550 >> זה היה לא יעיל. 68 00:03:27,550 --> 00:03:33,890 ובמקרים רבים, שלך חומרה שלא מנוצל. 69 00:03:33,890 --> 00:03:38,830 אז, בסוף שנתי ה -90 ותחילת שנות ה -2000, וירטואליזציה של חומרה נתקלה. 70 00:03:38,830 --> 00:03:42,475 וכמו שאתם יכולים לראות כאן ב תמונה, בעצם מה שהם עשו 71 00:03:42,475 --> 00:03:46,390 הוא מופק הבריכה של משאבי חומרה חופשיים 72 00:03:46,390 --> 00:03:49,680 ושימש סוג של אלה לשכבות העליונות, 73 00:03:49,680 --> 00:03:52,360 במקרה זה, אורחים מערכת הפעלה. 74 00:03:52,360 --> 00:03:54,940 >> וכל הרעיון של מכונות וירטואליות נתקלו 75 00:03:54,940 --> 00:03:59,110 ושבאמת עזרו ענן מחשוב כפי שאנו מכירים אותו היום. 76 00:03:59,110 --> 00:04:02,730 אז מה זה אומר הוא שאתה יכול לרוץ מכונות וירטואליות מרובות, ש 77 00:04:02,730 --> 00:04:06,720 התכוון ערימות מרובות, מרובה יישום על אותו מחשב פיזי. 78 00:04:06,720 --> 00:04:10,570 79 00:04:10,570 --> 00:04:16,440 >> זה בהחלט עזר עם מהירות של פריסת יישומים. 80 00:04:16,440 --> 00:04:17,629 בהחלט עם הוצאות. 81 00:04:17,629 --> 00:04:22,810 אתה לא צריך ללכת ולבלות אנרגיה, זמן ומשאבים כדי לצבור 82 00:04:22,810 --> 00:04:26,210 יותר שרתים כדי להגיע ליותר מחשוב. 83 00:04:26,210 --> 00:04:30,950 ואת המהירות של ממש להביא משאבים אלה הוא עד הרבה יותר מהר. 84 00:04:30,950 --> 00:04:31,450 גדול. 85 00:04:31,450 --> 00:04:34,320 >> אז פתרנו את הרעב בעולם, נכון? 86 00:04:34,320 --> 00:04:36,390 לא לא ממש. 87 00:04:36,390 --> 00:04:42,410 אז, וירטואליזציה כמו זה סייע למעשה, לטפל בבעיה, 88 00:04:42,410 --> 00:04:45,460 זה בעצם הציג הרבה אתגרים. 89 00:04:45,460 --> 00:04:49,210 Hypervisor בהחלט הציג הרבה מורכבות, 90 00:04:49,210 --> 00:04:53,820 טיפול בסיסי אלה בריכה של משאבים. 91 00:04:53,820 --> 00:04:57,910 >> זה כבד יותר במובן זה שלפני הייתה לך מערכת הפעלה אחת ש 92 00:04:57,910 --> 00:05:01,830 זה כמו שלוש, ארבעה הופעות בדיסק. 93 00:05:01,830 --> 00:05:04,230 עכשיו, אם יש לך 10 מכונות על חומרה אחת 94 00:05:04,230 --> 00:05:09,060 אתה צריך להכפיל את זה במספר המכונות. 95 00:05:09,060 --> 00:05:11,440 זה בהחלט יותר יקר במובן שאתה עדיין 96 00:05:11,440 --> 00:05:14,430 צריך לקבל רישוי ל טכנולוגיית וירטואליזציה 97 00:05:14,430 --> 00:05:18,210 אם זה לא קוד פתוח. 98 00:05:18,210 --> 00:05:21,120 >> אבל, בואו לא ניקח את כל אשראי ומירטואליזציה. 99 00:05:21,120 --> 00:05:27,530 כי מה שקרה הוא שיש הרבה ערימות והרבה תוכנות 100 00:05:27,530 --> 00:05:33,900 טכנולוגיות שאפשרו על ידי כמה מהר אתה היה יכול לקבל 101 00:05:33,900 --> 00:05:38,040 למשאבים עם בום הענן. 102 00:05:38,040 --> 00:05:46,675 >> אז, היום אפליקציה או שירות יחיד יכול להיות באמצעות כל זמני הריצה הבאות 103 00:05:46,675 --> 00:05:47,216 או מסדי נתונים. 104 00:05:47,216 --> 00:05:50,250 105 00:05:50,250 --> 00:05:56,070 PHP, Python, MySQL, Redis, מה לא. 106 00:05:56,070 --> 00:05:59,740 אז יש הרבה מורכבות בזה מספר הערימות למעשה להביא את 107 00:05:59,740 --> 00:06:02,210 שירות יחיד. 108 00:06:02,210 --> 00:06:07,300 ויחד עם זה, היה לך הרבה משאבים או תשתיות הבסיסיים 109 00:06:07,300 --> 00:06:15,210 סוגים לבחון לפרוס ובעצם לקחת לייצור יישומים אלה 110 00:06:15,210 --> 00:06:16,900 שאתה מפתח. 111 00:06:16,900 --> 00:06:21,950 >> במיוחד כמו שיש לך צוותי בוגר שעובד על יישומים אלה, 112 00:06:21,950 --> 00:06:25,310 יש הרבה מורכבות ואתגרים 113 00:06:25,310 --> 00:06:31,660 שהובאו על מנת להבטיח ש cycle-- בעצם יישום 114 00:06:31,660 --> 00:06:34,040 מחזור פיתוח, הוא מוצלח באמת. 115 00:06:34,040 --> 00:06:40,440 אז, את העובדה שהיישום שלך הוא עובד באופן מקומי על VM המקומי שלך 116 00:06:40,440 --> 00:06:47,480 אינו מתחייב כי הקולגה שלך הולך לצפות את אותן תוצאות. 117 00:06:47,480 --> 00:06:51,330 >> וכאשר צוות התפעול הוא מעורב בלקיחת מה שיש לך 118 00:06:51,330 --> 00:06:54,480 ופריסתה בייצור קנה מידה, גם אין שום ערובה 119 00:06:54,480 --> 00:06:56,730 שזה באמת הולך לקרות. 120 00:06:56,730 --> 00:07:00,900 אז זה משאיר אותנו עם באמת big-- הרבה סימני שאלה, 121 00:07:00,900 --> 00:07:07,700 הרבה אתגרים למעשה מתמודד באופן דומה בימים. 122 00:07:07,700 --> 00:07:12,280 וזה הזכיר לנו ענף הספנות. 123 00:07:12,280 --> 00:07:14,280 >> אז תעשיית הספנות היה הרבה מוצרים, 124 00:07:14,280 --> 00:07:16,190 כפי שניתן לראות בצד שמאל. 125 00:07:16,190 --> 00:07:19,840 ועל צד ימין, יש הרבה, בעצם, 126 00:07:19,840 --> 00:07:22,160 דרכים לספינה מוצרים אלה. 127 00:07:22,160 --> 00:07:26,040 ומה קורה כזוג אנשים הגיעו יחד ואמרו, 128 00:07:26,040 --> 00:07:29,600 אנחנו צריכים לתקן כמה אנחנו בעצם ספינת מוצרים אלה. 129 00:07:29,600 --> 00:07:33,280 ובום, יש לך את המכולה intermodal. 130 00:07:33,280 --> 00:07:38,970 >> אז הם הסכימו על רוב גדלים נפוצים למכל. 131 00:07:38,970 --> 00:07:40,160 כיצד לטפל בהם. 132 00:07:40,160 --> 00:07:44,560 מה בדיוק שיטה שאתה צריך כדי לטעון אותם ולפרוק אותם. 133 00:07:44,560 --> 00:07:49,590 ולכן, שבאמת עזר ענף הספנות. 134 00:07:49,590 --> 00:07:55,250 עכשיו להתמקד יותר מ -90% מועברים בעולם משתמשים במכולות אלה. 135 00:07:55,250 --> 00:08:01,010 וזה בהחלט יורד ההוצאות כמו גם 136 00:08:01,010 --> 00:08:03,400 הנזקים עקב משלוח. 137 00:08:03,400 --> 00:08:09,660 >> אז אנחנו לוקחים אותו המודל ו להחיל את תוכנת פיתוח שתי אפליקציה 138 00:08:09,660 --> 00:08:13,080 ארכיטקטורה, במובן מכלה ש 139 00:08:13,080 --> 00:08:15,842 לקח את הווירטואליזציה רמה אחת למעלה. 140 00:08:15,842 --> 00:08:17,800 אז במקום לעשות את זה ברמת החומרה, 141 00:08:17,800 --> 00:08:22,060 זה הפך יותר של הפעלה וירטואליזציה ברמת המערכת. 142 00:08:22,060 --> 00:08:26,450 >> ואנחנו עושים את זה על ידי מתן כל יישום בעצמו קל, 143 00:08:26,450 --> 00:08:31,180 מבודד, להריץ, ו נייד, והכי חשוב, 144 00:08:31,180 --> 00:08:35,049 דרך לחבילה למעשה כל מה שהיא צריכה לרוץ. 145 00:08:35,049 --> 00:08:36,100 בכל מקום שהוא יכול להפעיל. 146 00:08:36,100 --> 00:08:42,039 אז, ללא קשר אם אתה מפעיל אותו על סביבת dev מקומית, הייצור שלך 147 00:08:42,039 --> 00:08:44,490 סביבה, הבימוי שלך או בדיקה. 148 00:08:44,490 --> 00:08:47,700 לא משנה מה עומד בבסיס תשתית היא שם, 149 00:08:47,700 --> 00:08:51,410 הייתה לך אפליקציה עובדת פונקציונלית. 150 00:08:51,410 --> 00:08:54,100 151 00:08:54,100 --> 00:09:01,800 >> אז זה בדיוק מה שבעצם מכולות לעשות לבעיה זו. 152 00:09:01,800 --> 00:09:04,070 הם פונים זה על ידי אריזתו באופן כזה 153 00:09:04,070 --> 00:09:09,490 שזה יכול להבטיח שזה נפרס בהצלחה, לא משנה היכן הוא חי. 154 00:09:09,490 --> 00:09:12,120 אז אם אתה הולך כמו, בוב זה עדיין בסדר. 155 00:09:12,120 --> 00:09:17,860 אם אתה מבולבל עם מה שאני אומר, אני הולך להיות לפרט על זה. 156 00:09:17,860 --> 00:09:20,900 >> אז איך עושה את עצמו דוקר תתאים בתמונה הזאת? 157 00:09:20,900 --> 00:09:26,335 אז דוקר היא פלטפורמה פתוחה בקלות, מדגישים בקלות, 158 00:09:26,335 --> 00:09:30,500 לבנות ספינה, לרוץ, עצמי נייד קל משקל 159 00:09:30,500 --> 00:09:33,440 מכולות אפליקציה מספיק מקום. 160 00:09:33,440 --> 00:09:37,660 אז אם אתה לוקח משהו מכל זה דיבורים, בבקשה לקחת הבא. 161 00:09:37,660 --> 00:09:40,980 >> אם יש לך ריצת האפליקציה שלך באופן מקומי, ואתה פיתח אותו 162 00:09:40,980 --> 00:09:45,930 בשימוש בפלטפורמה דוקר, מצפה זה להתפרס בהצלחה. 163 00:09:45,930 --> 00:09:49,380 לא משנה מה הוא תשתית בסיסית. 164 00:09:49,380 --> 00:09:53,830 אז אם יש לך דוקר מיכל וזה עובד, אז 165 00:09:53,830 --> 00:09:58,130 כל עוד יש דוקר מנוע בהאתרים-- האחר 166 00:09:58,130 --> 00:10:02,190 אם תשתית הפעולה שלך הוא משתמש בכל ענן, בין אם זה 167 00:10:02,190 --> 00:10:06,680 הוא AWS, או של גוגל, או מיקרוסופט, או כל העננים הציבוריים, 168 00:10:06,680 --> 00:10:10,010 או ענן משלך, או ערימה הפתוחה שלך ענן, או בסביבה המקומית שלך. 169 00:10:10,010 --> 00:10:11,970 >> אם יש לך מנוע ריצה, שאמצעי 170 00:10:11,970 --> 00:10:14,537 זה הולך להיות בהצלחה לפרוס שם. 171 00:10:14,537 --> 00:10:16,620 זה הולך להיות ריצה בדיוק באותה ההתנהגות 172 00:10:16,620 --> 00:10:21,480 כפי שאתה הארכיטקטורה שזה יהיה. 173 00:10:21,480 --> 00:10:26,080 אז אם אנחנו מסתכלים at-- אני הולך לעבור את מה שבעצם 174 00:10:26,080 --> 00:10:29,160 נמצא במרכיבים העיקריים של דוקר. 175 00:10:29,160 --> 00:10:31,060 >> אז המנוע הוא הליבה של דוקר. 176 00:10:31,060 --> 00:10:32,770 זה המוח של. 177 00:10:32,770 --> 00:10:39,360 זה מנצח בניין, משלוח, ופריסה וניהול 178 00:10:39,360 --> 00:10:41,570 המכולות עצמם. 179 00:10:41,570 --> 00:10:45,160 אני לחפור לתוך מה עושה מנוע בפרטים נוספים בשני. 180 00:10:45,160 --> 00:10:47,740 181 00:10:47,740 --> 00:10:51,720 בעיקרון, כי דוקטור נבנה סביב ארכיטקטורות שרת לקוח, 182 00:10:51,720 --> 00:10:56,630 זאת כדי אינטראקציה עם מנוע אתה צריך סוג של לקוח. 183 00:10:56,630 --> 00:11:01,200 >> תמונות התבניות ב שמכל בנוי מ. 184 00:11:01,200 --> 00:11:06,800 אז תמונות הן בעצם קבצים רק סטטי. 185 00:11:06,800 --> 00:11:08,740 תבניות ומכולות הוא למעשה מה 186 00:11:08,740 --> 00:11:12,280 פועל בזמן הריצה ש משרת את הבקשה שלך 187 00:11:12,280 --> 00:11:15,150 או עושה משהו עם הנתונים. 188 00:11:15,150 --> 00:11:19,020 >> רישום מופנה כבעיה של איך אתה בעצם להפיץ תמונות. 189 00:11:19,020 --> 00:11:23,230 אז אם אתה צריך לשתף את תמונה שעבדת על לקולגה שלך 190 00:11:23,230 --> 00:11:27,220 או לצוות אופ, להשתמש בו באמצעות רישום. 191 00:11:27,220 --> 00:11:31,720 ניתן להוריד קוד פתוח הגרסה שלו שעבד על דוקר 192 00:11:31,720 --> 00:11:33,150 ולפתוח מקורות. 193 00:11:33,150 --> 00:11:38,040 >> או שאתה יכול להשתמש בעזרה דוקר, המהווה את גרסת הענן 194 00:11:38,040 --> 00:11:40,130 לדחוף ולמשוך את התמונות שם. 195 00:11:40,130 --> 00:11:41,160 זה דבר ענק. 196 00:11:41,160 --> 00:11:44,520 כי יש ענק מערכת אקולוגית סביב דוקר וזה 197 00:11:44,520 --> 00:11:48,960 באמת ניצול כבדות הרכזת. 198 00:11:48,960 --> 00:11:59,780 >> אז לסיכום כאן, זה איך הלקוח עבודה מינימליסטית דוקר. 199 00:11:59,780 --> 00:12:04,040 אתה אינטראקציה עם המארח, ב מקרה זה זה דמונים דוקר. 200 00:12:04,040 --> 00:12:06,490 זה אותו דבר כמו מנוע. 201 00:12:06,490 --> 00:12:09,690 אתה עושה פקודות כמו דוקר לבנות, למשוך, ריצה. 202 00:12:09,690 --> 00:12:14,280 והמנוע עצמו הולך ועושה את הדברים האלה. 203 00:12:14,280 --> 00:12:18,010 >> אז או שהוא מקיים אינטראקציה עם רישום למשוך את התמונות האלה 204 00:12:18,010 --> 00:12:19,670 והשכבות של הדימויים. 205 00:12:19,670 --> 00:12:25,030 אם אם ברצונך לפרוס, לנהל מכולות, להרוג אותם, לזרוק אותם, 206 00:12:25,030 --> 00:12:25,730 מה לא. 207 00:12:25,730 --> 00:12:32,190 אז זה מסכם את העבודה של כל הרכיבים הללו. 208 00:12:32,190 --> 00:12:34,710 >> אז אם אתה לוקח כל מרכיב בפני עצמו. 209 00:12:34,710 --> 00:12:37,690 אז מנוע, זה רק שד. 210 00:12:37,690 --> 00:12:40,800 זה סוג של ישחק אותו לתמוך ב זה על לינוקס כי זה עושה 211 00:12:40,800 --> 00:12:44,380 דורש תכונות ליבה מסוימות של לינוקס. 212 00:12:44,380 --> 00:12:48,820 אבל Windows פועלת בעושה את אותו הדבר. 213 00:12:48,820 --> 00:12:53,720 זה אמור להיות נתמך ב- Windows Server 2016. 214 00:12:53,720 --> 00:13:01,500 >> אז, שוב, את האחריות עם מנוע הוא, או ל, לבנות תמונות. 215 00:13:01,500 --> 00:13:05,340 משוך תמונות מהדוקרות רכזת או הרישום שלך. 216 00:13:05,340 --> 00:13:07,840 אם תסיים עם התמונות האלה או שאתה יוצר תמונות חדשות, 217 00:13:07,840 --> 00:13:14,770 אתה יכול לדחוף אותם בחזרה לרישום לחלקם לקבוצות אחרות. 218 00:13:14,770 --> 00:13:18,300 >> ומנסה להכיל אותו באופן מקומי ולנהל את מחזור החיים של מכולות 219 00:13:18,300 --> 00:13:19,260 באופן מקומי. 220 00:13:19,260 --> 00:13:22,010 היא בנויה סביב API HTTP REST. 221 00:13:22,010 --> 00:13:24,480 אז מבחינה טכנית אתה יכול לכתוב הלקוח שלך 222 00:13:24,480 --> 00:13:31,650 כל עוד הוא משתמש בHTTP, שהוא מאוד מנגנון סטנדרטי לדבר מנוע 223 00:13:31,650 --> 00:13:33,110 והרבה שירותים אחרים. 224 00:13:33,110 --> 00:13:35,780 ואתה יכול לראות מ כאן שללא קשר 225 00:13:35,780 --> 00:13:39,010 ממה שהתשתית הוא, כל עוד אתה can-- כל 226 00:13:39,010 --> 00:13:42,170 אתה צריך היא הפעלה מערכת, במיוחד לינוקס. 227 00:13:42,170 --> 00:13:45,460 >> ואתה יכול להתקין מנוע דוקר על גבי זה ויש לי אותו פועל 228 00:13:45,460 --> 00:13:48,970 וזה מנצח, בעצם, כל אלה אפליקציה אחת, שתיים, 229 00:13:48,970 --> 00:13:51,530 ושלוש הם מכולות בפועל. 230 00:13:51,530 --> 00:13:53,990 אז זה מנוע. 231 00:13:53,990 --> 00:13:58,040 כפי שציינתי קודם לכן, כי אתה צריך אינטראקציה עם מנוע, 232 00:13:58,040 --> 00:13:59,200 יש לקוח. 233 00:13:59,200 --> 00:14:03,180 >> אבל למעשה בעת ההתקנה דוקר, זה ספינות עם זה. 234 00:14:03,180 --> 00:14:06,110 אז זה מקבל מותקן, אז זה בינארי יחיד. 235 00:14:06,110 --> 00:14:11,830 ואתה יכול לעשות שיחות מקומיות למנוע דוקר שלך. 236 00:14:11,830 --> 00:14:14,040 או שיחות מרחוק למנועים מרחוק. 237 00:14:14,040 --> 00:14:16,600 238 00:14:16,600 --> 00:14:19,590 זה להשתמש HTTP, כ שציינתי קודם לכן. 239 00:14:19,590 --> 00:14:24,200 יש לקוח GUI נקרא Kitematic מדוקר. 240 00:14:24,200 --> 00:14:26,390 ויש בהחלט הרבה אנשים אחרים 241 00:14:26,390 --> 00:14:29,740 שבונים הרבה GUIs שבעצם ליישם 242 00:14:29,740 --> 00:14:32,980 כמה HTTP קורא לדבר מנוע. 243 00:14:32,980 --> 00:14:35,920 244 00:14:35,920 --> 00:14:39,280 >> רק חלק פקודות מדגם. 245 00:14:39,280 --> 00:14:44,620 אם אתה עושה את הגרסה דוקר, זה היה להראות לך את גרסת הלקוח, כמו גם 246 00:14:44,620 --> 00:14:47,030 גרסת השרת. 247 00:14:47,030 --> 00:14:49,500 אם אתה עושה את המידע דוקר זה יהיה להגיד לך את כל המידע 248 00:14:49,500 --> 00:14:54,300 על כמה מכולות פועלים או שנוצר, כמה תמונות יש לך, 249 00:14:54,300 --> 00:14:56,530 וכן הלאה וכן הלאה. 250 00:14:56,530 --> 00:15:01,850 >> כאן יש לי, בסמוך ל התיבה האחרונה, יש לי לרוץ דוקטור. 251 00:15:01,850 --> 00:15:04,970 אז ככה אני בעצם יצירת מיכל. 252 00:15:04,970 --> 00:15:08,960 ואני נותן אותו להד שלום העולם ולישון לרגע ומה לא. 253 00:15:08,960 --> 00:15:12,830 ואתה יכול לראות את תוֹצָאָה. אז זה מתמשך. 254 00:15:12,830 --> 00:15:16,930 ודומה לPS לינוקס, אתה יכול לראות כל התהליכים ו, ​​במקרה זה, 255 00:15:16,930 --> 00:15:18,540 כל מכולות הריצה. 256 00:15:18,540 --> 00:15:23,430 בחזרה מתייחס זה אחד ל מכלי זה עתה יצר. 257 00:15:23,430 --> 00:15:27,560 >> אז, זה באמת חשוב, כי, כמו, זה יכול להיות קצת מבלבל. 258 00:15:27,560 --> 00:15:33,050 אז תמונות הן לקריאה בלבד אוסף של קבצים, נכון? 259 00:15:33,050 --> 00:15:37,000 הם מה שהמכל שלנו מבוסס על. 260 00:15:37,000 --> 00:15:40,340 אבל הם לקריאה בלבד בלבד. 261 00:15:40,340 --> 00:15:44,330 אז שתתחיל עם תמונת בסיס. 262 00:15:44,330 --> 00:15:50,180 הוא נוטה לחקות כמו OS-, כך אובונטו, CentOS, תמונת בסיס מה לא. 263 00:15:50,180 --> 00:15:53,990 ואז אתה מתחיל לבנות על גבי ש, שכבות מסוימות, שיהפכו את 264 00:15:53,990 --> 00:16:00,010 תמונת הסוף שלך, התוצאה הסופית כאן. 265 00:16:00,010 --> 00:16:03,220 >> וכל אחד משכבות אלה צריך תמונת הורה 266 00:16:03,220 --> 00:16:06,690 שאליו הוא מפנה כאשר היא באמת רוצה ליצור. 267 00:16:06,690 --> 00:16:09,922 הם בלתי ניתנים לשינוי, במובן שבגלל שהם לקריאה בלבד, 268 00:16:09,922 --> 00:16:11,630 אתה לא יכול למעשה לבצע שינוייהם. 269 00:16:11,630 --> 00:16:17,540 אתה יכול להשתמש בם כדי ליצור מיכל מתמונה, ש 270 00:16:17,540 --> 00:16:23,530 יקרא את כל הבא תמונות הנדרשות מתחתיו. 271 00:16:23,530 --> 00:16:26,400 >> אתה יכול לבצע שינויים לשכבה שונה, 272 00:16:26,400 --> 00:16:28,810 זה שכבה לשכתב אני יהיה לדבר על בשני. 273 00:16:28,810 --> 00:16:31,350 אבל כל אחד משכבות אלה אף פעם לא משתנים. 274 00:16:31,350 --> 00:16:34,300 275 00:16:34,300 --> 00:16:38,670 בעיקרון תמונות להשתמש במשהו בשם האיחוד File System, UFS. 276 00:16:38,670 --> 00:16:42,280 ויש אחסון שונה מסדים לנצל טכנולוגיה זו. 277 00:16:42,280 --> 00:16:49,430 ומה זה אומר הוא שזה מפגיש מערכות קבצים שונות 278 00:16:49,430 --> 00:16:51,190 לגרום להם להיראות כמו אחד. 279 00:16:51,190 --> 00:16:54,460 >> אז אתה בעצם יכול, מ פרספקטיבת יישום, 280 00:16:54,460 --> 00:16:59,570 יש לך ראש של תצוגה המציגה כל מערכת הקבצים השונות נחוצה 281 00:16:59,570 --> 00:17:01,120 ליישום שכדי להפעיל. 282 00:17:01,120 --> 00:17:04,400 אבל הם בעצם, על זה, הם למעשה במקומות נפרדים 283 00:17:04,400 --> 00:17:06,410 ומנוצל על ידי מכולות אחרות גם כן. 284 00:17:06,410 --> 00:17:09,569 285 00:17:09,569 --> 00:17:14,410 >> אז כפי שאתם יכולים לראות כאן ש אם נתחיל עם תמונת דמון 286 00:17:14,410 --> 00:17:18,619 כתמונת בסיס, ולאחר מכן אנחנו הולכים ובלהוסיף [? Emacs?] 287 00:17:18,619 --> 00:17:20,720 ואז זה עוד שכבה. 288 00:17:20,720 --> 00:17:21,916 ולאחר מכן להוסיף אפאצ'י. 289 00:17:21,916 --> 00:17:22,790 זה שכבה נוספת. 290 00:17:22,790 --> 00:17:25,470 ואז אנחנו מבלים מיכל מזה. 291 00:17:25,470 --> 00:17:29,760 כל אחד מהתמונות האלה, כל אחד משכבות אלה, 292 00:17:29,760 --> 00:17:35,530 הוא ברור ויכול להיות שימוש חוזר במכל אחר. 293 00:17:35,530 --> 00:17:40,070 >> אם אתה מסתכל על מיכלי עצמם, הם איכשהו כמו כמו-VM, 294 00:17:40,070 --> 00:17:41,930 אבל לא התייחס אליו בזמן. 295 00:17:41,930 --> 00:17:49,180 אז, אין להם, מבחינה טכנית, מערכת הפעלה מלאה מתחתיהם. 296 00:17:49,180 --> 00:17:52,630 הם משתמשים בליבה אחת של מערכת ההפעלה המארחת. 297 00:17:52,630 --> 00:17:54,440 והם בונים על גבי זה. 298 00:17:54,440 --> 00:17:56,250 הם מחקים באיך הם נראים. 299 00:17:56,250 --> 00:18:00,710 הם מחקים קובץ שורשם מערכת של מערכת ההפעלה. 300 00:18:00,710 --> 00:18:04,930 אבל הם בעצם לא משכפלים. 301 00:18:04,930 --> 00:18:12,080 >> לכן, במקום שיש שכבות בלתי ניתנות לשינוי, השכבה האחרונה, המהווה את המכל 302 00:18:12,080 --> 00:18:14,690 עצמו, זה שכבת קריאה-כתיבה. 303 00:18:14,690 --> 00:18:17,350 שגם מנהל את התהליכים הבקשה שלך. 304 00:18:17,350 --> 00:18:23,530 וזה תלוי בשכבות הבסיס. 305 00:18:23,530 --> 00:18:26,730 כל מיכל הוא נוצר מתמונה. 306 00:18:26,730 --> 00:18:32,450 ותמונה שיכולה להיות אחת שכבה או תמונה רבה-שכבתית. 307 00:18:32,450 --> 00:18:37,200 >> ואני רוצה לציין כאן שדוקר משתמש בכבדות, 308 00:18:37,200 --> 00:18:40,370 או מבוסס על מנגנון ההעתקה-און-כתיבה. 309 00:18:40,370 --> 00:18:44,350 כך שלמעשה, אם אתה לא מה שהופך למכל שינויים, 310 00:18:44,350 --> 00:18:45,930 זה לא הולך לקחת שטח נוסף. 311 00:18:45,930 --> 00:18:49,600 אז זה בעצם איך אתה לסכם העתק-און-כתיבה. 312 00:18:49,600 --> 00:18:53,820 זה הולך בהחלט לזרז זמן האתחול למכל. 313 00:18:53,820 --> 00:18:56,300 כי אם אתה לא עושה שינויים במכל, 314 00:18:56,300 --> 00:18:57,800 זה ניצול מה שכבר יש. 315 00:18:57,800 --> 00:19:01,130 316 00:19:01,130 --> 00:19:02,955 >> אז, איך זה עובד בפועל. 317 00:19:02,955 --> 00:19:06,920 318 00:19:06,920 --> 00:19:14,240 חלק ממנה כמו, עכשיו, זה מנצל לפחות שתי ליבה מרכזית 319 00:19:14,240 --> 00:19:14,820 מאפיינים. 320 00:19:14,820 --> 00:19:17,660 וזה בעצם מה ש נוצר רמה של בידוד 321 00:19:17,660 --> 00:19:19,550 למכלי עצמם. 322 00:19:19,550 --> 00:19:22,290 תכונות אלה מרחבי וcgroups. 323 00:19:22,290 --> 00:19:29,870 אז מרחבי הם דרך ל ליצור משאבים מבודדים, 324 00:19:29,870 --> 00:19:36,290 כך שבתוך המכל עצמו, רק אתה יכול לראות משאבים מסוימים. 325 00:19:36,290 --> 00:19:40,030 כגון ממשק הרשת או משתמשים מסוימים או מה לא. 326 00:19:40,030 --> 00:19:44,160 >> ואלה הם רק גלויים ורק נגיש בתוך המכל. 327 00:19:44,160 --> 00:19:48,290 Cgroup בצד מגבלות האחרות איך אתה משתמש במשאבים אלה. 328 00:19:48,290 --> 00:19:50,950 מעבד, זיכרון, ודיסק. 329 00:19:50,950 --> 00:19:53,900 כאשר אתה יכול ללכת ב, אני מתכוון לאלה הם למעשה 330 00:19:53,900 --> 00:19:57,410 תכונות שפותחו by-- הם חלק מליבת לינוקס. 331 00:19:57,410 --> 00:20:01,800 אז הם לא המציאו מחדש על ידי או על ידי מחדש דוקר. 332 00:20:01,800 --> 00:20:03,770 דוקר משתמש בהם. 333 00:20:03,770 --> 00:20:05,560 >> מה שרופא של ממש עשה כאן הוא למעשה אותו 334 00:20:05,560 --> 00:20:08,680 יצירת מתוזמר מרחבי עבור כל מכולה 335 00:20:08,680 --> 00:20:13,320 ויצירת cgroups כך שזה קל עד כדי גיחוך ליצור מכולות 336 00:20:13,320 --> 00:20:14,870 שימוש בתכונות אלה. 337 00:20:14,870 --> 00:20:22,910 כמובן, כפי שתארתי קודם לכן, איחוד מערכות קבצים והעתקה-און-כתוב באמת 338 00:20:22,910 --> 00:20:26,810 לעזור את המהירות ואת הדיסק סילוק מכולות. 339 00:20:26,810 --> 00:20:28,917 >> וברגע שאתה מקבל ידיים סביב דוקר, 340 00:20:28,917 --> 00:20:32,000 אתה הולך לראות כמה מהר זה ל למעשה ספין את מכולות ודמעה 341 00:20:32,000 --> 00:20:32,500 אותם. 342 00:20:32,500 --> 00:20:36,060 343 00:20:36,060 --> 00:20:40,230 לכן, אם אתה יכול לשאול, איך יכול אתה בעצם לבנות תמונות? 344 00:20:40,230 --> 00:20:45,940 אנחנו בונים תמונות על ידי תהליך של יצירת מכולות וביצוע שינויים, שינוי 345 00:20:45,940 --> 00:20:50,220 שלהם, וביצועם להפיכת תמונה. 346 00:20:50,220 --> 00:20:54,330 >> אז זה עוף ו התייחסות ביצה כאן, 347 00:20:54,330 --> 00:20:57,350 כי כל מיכלי לבוא מתמונות ותמונות לבוא 348 00:20:57,350 --> 00:21:00,270 ממכולות מחויבות, על פי רוב. 349 00:21:00,270 --> 00:21:03,830 קיימות שלוש אפשרויות כדי ליצור תמונות. 350 00:21:03,830 --> 00:21:06,580 אני הולך לתאר הראשון ואחרון. 351 00:21:06,580 --> 00:21:10,060 אתה יכול גם באופן ידני ללכת ולהפעיל את המכל 352 00:21:10,060 --> 00:21:14,280 ולבצע שינויים אלה, כמו שהיית עושה בכל VM 353 00:21:14,280 --> 00:21:17,060 או כל מערכת הפעלה, כגון כמו התקנת קבצים בינאריים חדשים, 354 00:21:17,060 --> 00:21:19,370 הוספת מערכות קבצים, ומה לא. 355 00:21:19,370 --> 00:21:22,620 >> ואז אתה יוצא, כ אתה יכול לראות שם למעלה. 356 00:21:22,620 --> 00:21:24,330 אני יוצא מיכל שלי. 357 00:21:24,330 --> 00:21:26,050 ואז אני עושה דוקר להתחייב. 358 00:21:26,050 --> 00:21:28,390 ואני מבצע את זה. 359 00:21:28,390 --> 00:21:31,560 ניתן לראות כי המספר כאן רק UUID, או 12 הראשונים 360 00:21:31,560 --> 00:21:32,810 פיסות UUID. 361 00:21:32,810 --> 00:21:34,320 או בתים של UUID. 362 00:21:34,320 --> 00:21:35,770 ואז אני קורא לזה התמונה שלי. 363 00:21:35,770 --> 00:21:39,510 אז עכשיו דוקר דואג הקלטה כל מה שעשיתי זה 364 00:21:39,510 --> 00:21:42,830 ויצירה החדשה תמונה על בסיס זה. 365 00:21:42,830 --> 00:21:47,080 366 00:21:47,080 --> 00:21:52,560 >> אני לא הולך לדבר על tarball, אבל יש דרך שאתה יכול להשיג אחד, 367 00:21:52,560 --> 00:21:58,200 ליצור אחד, או לעשות אחת תמונת שכבה באמצעות ארכיבים. 368 00:21:58,200 --> 00:22:02,650 מה שאני הולך לדבר על זה ומה בעיקר משמש היום, 369 00:22:02,650 --> 00:22:03,270 הוא Dockerfile. 370 00:22:03,270 --> 00:22:07,260 אשר הוא מבחינה טכנית הראשון צעד אוטומטי על ידי דוקר עצמו. 371 00:22:07,260 --> 00:22:11,920 אז Dockerfiles דברים שאתה הולך לראות בהרבה Repos GitHub 372 00:22:11,920 --> 00:22:13,150 היום. 373 00:22:13,150 --> 00:22:16,420 זה בעצם רק קובץ טקסט המתאר 374 00:22:16,420 --> 00:22:19,780 בדיוק איך לבנות תמונה. 375 00:22:19,780 --> 00:22:25,540 >> ועבור כל שורה, זה בעצם יוצר מיכל, מבצע שורה ש, 376 00:22:25,540 --> 00:22:30,480 מבצע מיכל שלתוך תמונה חדשה, ואתה, בעצם, 377 00:22:30,480 --> 00:22:36,160 להשתמש בו לכל פעולות שלאחר מכן עד שתגיעו לתמונה האחרונה. 378 00:22:36,160 --> 00:22:39,260 שהוא בעצם בסופו של המטרה כאן, הסוף. 379 00:22:39,260 --> 00:22:42,420 ואחרי שאתה exec-- לאחר ש לכתוב Dockerfile, ש 380 00:22:42,420 --> 00:22:46,750 הוא אך ורק בטקסט, אתה עושה דוקר לבנות ושם התמונה. 381 00:22:46,750 --> 00:22:50,000 >> ואתה מצביע שבהוא שם Dockerfile הוא ב. 382 00:22:50,000 --> 00:22:56,570 ואתה יכול לצפות לראות תמונה שלי כתמונה שיש לך באופן מקומי. 383 00:22:56,570 --> 00:22:59,100 אז זה רק חזותי דוגמא למה שקורה. 384 00:22:59,100 --> 00:23:00,820 אתה מתחיל עם תמונת בסיס. 385 00:23:00,820 --> 00:23:05,150 אתה מפעיל את זה לתוך מיכל ש אינו משנה את תמונת הבסיס עצמו. 386 00:23:05,150 --> 00:23:08,310 אבל במקום יוצר לשכתב שכבה על גבי זה 387 00:23:08,310 --> 00:23:10,340 שבו אתה לבצע את השינויים, שבו אתה מתחייב 388 00:23:10,340 --> 00:23:15,050 ואתה חוזר על התהליך עד ש אתה מקבל התמונה הסופית שלך. 389 00:23:15,050 --> 00:23:20,980 >> ועל ידי כך, כל מבנה אחר תהליך יכול להשתמש באותו שכבות 390 00:23:20,980 --> 00:23:23,870 ובעצם same-- דוקר מטמוני שכבות אלה. 391 00:23:23,870 --> 00:23:30,040 כך שאם אני עושה את אותו הדבר תהליך, אבל במקום להתקין PHP, 392 00:23:30,040 --> 00:23:31,540 אני מתקין פייתון. 393 00:23:31,540 --> 00:23:34,210 זה הולך להשתמש אפאצ'י ואובונטו. 394 00:23:34,210 --> 00:23:39,570 אז ככה אתה ניצול הדיסק שלך. 395 00:23:39,570 --> 00:23:42,330 זה ניצול המטמון ותמונות זמינות שם. 396 00:23:42,330 --> 00:23:45,320 397 00:23:45,320 --> 00:23:48,840 >> החלק האחרון הוא רישום, ש איך אתה להפיץ את התמונות שלך. 398 00:23:48,840 --> 00:23:52,710 וכפי שציינתי קודם לכן, יש גרסת ענן שלה, 399 00:23:52,710 --> 00:23:54,290 שהוא דוקר Hub. 400 00:23:54,290 --> 00:23:57,550 אתה יכול ללכת ולחקור הרבה, בעצם 401 00:23:57,550 --> 00:24:04,900 זה מוצר SAS ציבורי ש עדיין אתה יכול לקבל תמונות פרטיות, 402 00:24:04,900 --> 00:24:06,590 אבל יש הרבה תמונות ציבוריות. 403 00:24:06,590 --> 00:24:10,580 זה למעשה בלתי-מוגבל, אתה יכול לדחוף תמונות ציבוריות ללא הגבלה יש. 404 00:24:10,580 --> 00:24:13,730 וזה איך אתה יכול לשתף פעולה עם צוות שלך. 405 00:24:13,730 --> 00:24:17,159 >> אתה יכול רק להצביעם בך ריפית והם יכולים להוריד אותו או את התמונה שלך 406 00:24:17,159 --> 00:24:18,200 והם יכולים להוריד אותו. 407 00:24:18,200 --> 00:24:21,140 408 00:24:21,140 --> 00:24:24,990 אז מספיק עם הדיבורים. 409 00:24:24,990 --> 00:24:29,110 מי שרוצה לראות כמה הדגמות אמיתיות מהיר? 410 00:24:29,110 --> 00:24:31,330 בסדר. 411 00:24:31,330 --> 00:24:34,050 אז הנה יש לי. 412 00:24:34,050 --> 00:24:37,480 Ca אתם רואים את המסך שלי? 413 00:24:37,480 --> 00:24:38,390 בסדר. 414 00:24:38,390 --> 00:24:45,810 >> אז יש לי דוקר פועלים כאן, ולכן אני יכול לבדוק הוא-- זוהי הגרסה 415 00:24:45,810 --> 00:24:47,510 של דוקר שרץ. 416 00:24:47,510 --> 00:24:49,320 יכול לעשות מידע דוקר. 417 00:24:49,320 --> 00:24:55,730 סמן את כל המידע על כמה תמונות שיש להם, וכן הלאה וכן הלאה. 418 00:24:55,730 --> 00:24:58,890 דוקר PS, יש ריצה שום דבר. 419 00:24:58,890 --> 00:25:00,570 בשרשור אלה. 420 00:25:00,570 --> 00:25:06,370 >> אז הדבר הראשון שאני רוצה לעשות הוא להראות לך איך אתה יכול בקלות להפעיל את מיכל. 421 00:25:06,370 --> 00:25:09,350 אז היופי על ריצת דוקטור, אם זה באמת 422 00:25:09,350 --> 00:25:14,700 אינו מוצא תמונה באופן מקומי, כברירת מחדל הוא מדבר לרכזת דוקטור 423 00:25:14,700 --> 00:25:17,240 ומנסה למצוא אותו שם והורדות את זה בשבילך. 424 00:25:17,240 --> 00:25:22,820 אז זה כולל דוקר למשוך הפקודה, באופן טבעי. 425 00:25:22,820 --> 00:25:26,130 >> אז אם אני עושה ריצה דוקר, שלום-עולם. 426 00:25:26,130 --> 00:25:28,890 427 00:25:28,890 --> 00:25:31,200 אז, ראשון זה הולך כדי לנסות לאתר אותו. 428 00:25:31,200 --> 00:25:36,140 אחרת, כפי שאתם יכולים לראות כאן, זה לא הצליח למצוא אותו באופן מקומי. 429 00:25:36,140 --> 00:25:41,830 עכשיו זה פשוט משך את שתי שכבות שעשה תמונה ושאני רצתי אותו. 430 00:25:41,830 --> 00:25:45,440 שלום-העולם הוא רק בעצם פלטים, מה יש לך לעשות. 431 00:25:45,440 --> 00:25:47,680 אז זה הכי קל, אחד דוגמאות הכי קלות. 432 00:25:47,680 --> 00:25:53,840 אז בעצם אני פשוט רצתי ו הופסק המכל ממש מהר. 433 00:25:53,840 --> 00:25:59,500 >> אם אני רוצה run-- ודרך אגב, אם אני רוצה שפעם, רק שתדע, 434 00:25:59,500 --> 00:26:03,572 זה כמה זמן לוקח ל למעשה ספין ולהכיל אותו. 435 00:26:03,572 --> 00:26:05,030 אנחנו מודדים את זה באלפיות שני. 436 00:26:05,030 --> 00:26:10,600 אז אתה יכול לראות כמה זה יכול למעשה לעזור לך לא רק בבדיקה, 437 00:26:10,600 --> 00:26:13,200 אבל גם אף פריסה. 438 00:26:13,200 --> 00:26:17,221 אז זה הערה מהירה על זה. 439 00:26:17,221 --> 00:26:18,970 הדבר הבא שאני הולך לעשות הוא למעשה 440 00:26:18,970 --> 00:26:21,930 לרוץ תמונה כבר מוכנה. 441 00:26:21,930 --> 00:26:24,460 אז דוקר ריצה. 442 00:26:24,460 --> 00:26:27,240 -d הוא רק דגל לספר זה לרוץ ברקע. 443 00:26:27,240 --> 00:26:30,290 ו-p מקצה יציאות מסוימות. 444 00:26:30,290 --> 00:26:32,670 כי כברירת מחדל, מכולות הן מבודדות, 445 00:26:32,670 --> 00:26:36,080 ולכן אתה צריך לציין בדיוק איך זה יכול לגשת אליהם. 446 00:26:36,080 --> 00:26:41,150 ובמקרה הזה, אני אומר לי דוקר למפות נמל אקראי במחשב המארח 447 00:26:41,150 --> 00:26:44,560 ליציאה שצוינה ב המכל עצמו. 448 00:26:44,560 --> 00:26:47,130 449 00:26:47,130 --> 00:26:56,460 וזה בעצם שם image-- אני מקווה שזה נכון. 450 00:26:56,460 --> 00:27:01,780 >> אז היא עושה הורדות מקבילות כל של שכבות אלה כפי שאתה יכול לראות כאן. 451 00:27:01,780 --> 00:27:06,949 אלה הם של השכבות עושים תמונת הסוף שבניתי. 452 00:27:06,949 --> 00:27:08,115 זה הולך לקחת שני. 453 00:27:08,115 --> 00:27:11,290 454 00:27:11,290 --> 00:27:12,370 וזהו. 455 00:27:12,370 --> 00:27:16,590 >> אז עכשיו אם אני עושה ps דוקר, אני צריך לראות משהו שבו פועל. 456 00:27:16,590 --> 00:27:22,250 אני צריך לראות את תעודת הזהות, התמונה כי זה היה מבוסס על הנחה, 457 00:27:22,250 --> 00:27:23,880 ואת הפקודה שהוצא להורג. 458 00:27:23,880 --> 00:27:28,720 ואיך לגשת אליו היא בעצם אתה הולך לנמל ש. 459 00:27:28,720 --> 00:27:33,240 אז אני הולך צריכה-- זה הוא אני מפעיל אותו על AWS. 460 00:27:33,240 --> 00:27:37,150 אני מתכוון ללכת ל32,769. 461 00:27:37,150 --> 00:27:37,650 אופס. 462 00:27:37,650 --> 00:27:40,495 463 00:27:40,495 --> 00:27:41,120 וכאן אנחנו הולכים. 464 00:27:41,120 --> 00:27:44,550 >> אז זה בעצם רק שירות אינטרנט המציג 465 00:27:44,550 --> 00:27:46,240 שמכל זה להיות מוגש מ. 466 00:27:46,240 --> 00:27:50,450 אז אתה יכול לראות שזה הוא מa9f המכל. 467 00:27:50,450 --> 00:27:52,850 וכאן זה שמו של המכל. 468 00:27:52,850 --> 00:27:56,550 אז אתם יכולים לראות כמה מהר זה היה למעשה למשוך לא רק, אלא גם 469 00:27:56,550 --> 00:28:00,440 לפרוס מיכל זה. 470 00:28:00,440 --> 00:28:05,070 >> עכשיו השלב הבא הוא להסתכל לתוך Dockerfiles 471 00:28:05,070 --> 00:28:09,430 ואיך בעצם אנחנו יכולים לבנות תמונות חדשות. 472 00:28:09,430 --> 00:28:15,250 אני רק הולך לקבל שיבוט, מדגם מבוסס על Dockerfile קודם לכן 473 00:28:15,250 --> 00:28:17,755 תרשים, אחד לאפצ'י ו- PHP. 474 00:28:17,755 --> 00:28:26,740 475 00:28:26,740 --> 00:28:28,140 אני מקווה שאני זוכר ריפו שלי. 476 00:28:28,140 --> 00:28:36,410 477 00:28:36,410 --> 00:28:38,750 >> אז יש לי המאגר שלי עכשיו. 478 00:28:38,750 --> 00:28:43,080 ואתה הולך לראות זה הרבה בעצם. 479 00:28:43,080 --> 00:28:45,110 אני לא להתקין עץ. 480 00:28:45,110 --> 00:28:48,700 >> אז בעצם אתה הולך לראות איך תיעוד קוד המקור שלך סביב 481 00:28:48,700 --> 00:28:51,240 זה, ולאחר מכן על Dockerfile איך בעצם לארוז אותו. 482 00:28:51,240 --> 00:28:57,970 אז זה רק מדגם PHP שמהדהד CS50 שלום. 483 00:28:57,970 --> 00:29:01,550 >> אז אם אני רוצה להפעיל אותו, אני אעשה לבנות דוקר. 484 00:29:01,550 --> 00:29:03,370 אני צריך לבנות אותו לראשונה. 485 00:29:03,370 --> 00:29:12,420 אני הולך לשם זה demo_cs50. 486 00:29:12,420 --> 00:29:16,470 ואתה צריך תג לזה יותר מדי. 487 00:29:16,470 --> 00:29:19,802 אז בואו נקראים לזה V1 נקודה. 488 00:29:19,802 --> 00:29:21,760 אז כפי שתארתי קודם לכן, מה שאני עושה היום 489 00:29:21,760 --> 00:29:26,840 הוא אני אומר לי דוקר ללכת שימוש לראות-- למעשה, מצטער, רע. 490 00:29:26,840 --> 00:29:29,450 491 00:29:29,450 --> 00:29:32,500 אנחנו לא נסתכל בDockerfile עצמו. 492 00:29:32,500 --> 00:29:39,020 אז רק הדברים כאן הם index.php כמו גם את קובץ readme 493 00:29:39,020 --> 00:29:39,810 וDockerfile. 494 00:29:39,810 --> 00:29:44,600 >> אז אם אתה תסתכל Dockerfile, אז זה 495 00:29:44,600 --> 00:29:47,150 מאוד דומה למה ש שתארתי קודם. 496 00:29:47,150 --> 00:29:51,220 זה פשוט חבורה של צעדים שדוקרים מבצע 497 00:29:51,220 --> 00:29:56,330 על ידי יצירת ולהרוס את המכולות ו[? סופר?] אותם לתמונה. 498 00:29:56,330 --> 00:29:59,570 >> ובעצם אתה יכול see-- [לא ברור] זה כאן-- 499 00:29:59,570 --> 00:30:04,340 אבל זה מריפה המקומי. 500 00:30:04,340 --> 00:30:06,410 זה הולך וindex.php לתפוס. 501 00:30:06,410 --> 00:30:10,970 אז זה קוד המקור היחיד ש הם למעשה חלק מהיישום שלך. 502 00:30:10,970 --> 00:30:16,800 כל זה הוא בעצם צנרת מערכת הפעלה, 503 00:30:16,800 --> 00:30:21,460 מקבל את החבילות הנכונות ו אפאצ'י, ו- PHP, ומה לא. 504 00:30:21,460 --> 00:30:26,950 אבל זה בעצם לוקח index.php וביצועו למכל, 505 00:30:26,950 --> 00:30:28,210 לתמונה. 506 00:30:28,210 --> 00:30:33,120 >> אז אם אתה הולך קדימה ולהפעיל את הפקודה ידי ביצוע הפעולות הבאים, 507 00:30:33,120 --> 00:30:36,155 זה going-- למעשה, זה עלול לקחת קצת. 508 00:30:36,155 --> 00:30:40,870 509 00:30:40,870 --> 00:30:42,455 אני מקווה שזה לא ייקח יותר מדי זמן. 510 00:30:42,455 --> 00:30:45,129 511 00:30:45,129 --> 00:30:46,170 אז אתה יכול לראות את הצעדים. 512 00:30:46,170 --> 00:30:49,320 ואני ממליץ לך ללכת חזרה הביתה היום ולנסות את זה. 513 00:30:49,320 --> 00:30:51,280 ומנה תתאר איך בדיוק אתה עושה את זה. 514 00:30:51,280 --> 00:30:57,810 אבל זה ממש נהדר לראות בדיוק מה שקורה מאחורי הקלעים. 515 00:30:57,810 --> 00:31:02,420 אבל זה קל עד כדי גיחוך לבנות תמונות ולפרוס אותם באמצעות דוקר. 516 00:31:02,420 --> 00:31:12,170 517 00:31:12,170 --> 00:31:14,050 >> זה לוקח קצת יותר ממה שציפיתי. 518 00:31:14,050 --> 00:31:29,085 519 00:31:29,085 --> 00:31:32,690 >> בואו לראות מה קורה כאשר אתם-- להתקרר. 520 00:31:32,690 --> 00:31:36,260 אז כפי שאתם יכולים לראות, כל אחד מהשלבים האלה מייצג קווים בDockerfile. 521 00:31:36,260 --> 00:31:42,570 וזה מראה כאן ש בנה בהצלחה את התמונה. 522 00:31:42,570 --> 00:31:46,480 >> אז אם אני עושה את התמונות דוקר, אני הולך תראה את כל התמונות שיש לי באופן מקומי. 523 00:31:46,480 --> 00:31:52,160 ואחד מהם נקרא שם משתמש, ואת השם של התמונה, 524 00:31:52,160 --> 00:31:56,050 וrepresenting-- התג בעיקר זה תג גרסה. 525 00:31:56,050 --> 00:31:58,040 >> אז עכשיו אם אני רוצה לרוץ זה, אני עושה ריצה דוקר. 526 00:31:58,040 --> 00:32:06,040 527 00:32:06,040 --> 00:32:14,960 ואני רק רוצה לעשות -P -d. האם v1. 528 00:32:14,960 --> 00:32:18,500 אז אני יכול לראות עכשיו שיש לי שני מכולות פועלות, אחד שאני פשוט 529 00:32:18,500 --> 00:32:21,230 יצר ושלום דוקר אחד שיש לי שעבר. 530 00:32:21,230 --> 00:32:24,320 >> ואתם יכולים לראות כאן ש שהוקצה לו יציאה אחרת. 531 00:32:24,320 --> 00:32:30,710 אז אם אני הולך לאותו IP אבל להקצות אותו port-- שונה אני מקווה שלא. 532 00:32:30,710 --> 00:32:33,060 אז עכשיו זה יישום כי אני פשוט לפרוס. 533 00:32:33,060 --> 00:32:35,980 534 00:32:35,980 --> 00:32:43,900 >> אם אני רוצה לעשות שינויים, אני ניתן לערוך את קוד המקור במהירות 535 00:32:43,900 --> 00:32:49,050 ולבצע את הפעולות הבאות. 536 00:32:49,050 --> 00:32:55,170 בואו נעשה שלום הרווארד. 537 00:32:55,170 --> 00:32:57,989 אז עכשיו מה קורה לקרות הוא שאני 538 00:32:57,989 --> 00:32:59,905 הולך לתייג אותו עם שונה version-- הו, 539 00:32:59,905 --> 00:33:03,080 לא זו guy-- לתייג אותו עם גרסה שונה. 540 00:33:03,080 --> 00:33:05,735 ואתה הולך see-- לעשות אתם מצפים 541 00:33:05,735 --> 00:33:11,020 זה לקחת את אותה כמות של זמן לבנות אותו בפעם שנייה או לא? 542 00:33:11,020 --> 00:33:14,470 בסדר, ומישהו יודע למה? 543 00:33:14,470 --> 00:33:15,020 דבר. 544 00:33:15,020 --> 00:33:16,350 >> קהל: [לא ברור] 545 00:33:16,350 --> 00:33:19,830 >> ניקולה kabar: זה בעצם אנחנו רק לשנות את אחד הצעדים מאוחר יותר. 546 00:33:19,830 --> 00:33:23,110 ולכן זה הולך להשתמש ב מטמון ולהשתמש בכל שכבות אלה. 547 00:33:23,110 --> 00:33:27,080 וזה באמת חלק מ תכונות רוצח של דוקר 548 00:33:27,080 --> 00:33:32,930 איך זה בעצם מנצל ועושה שימוש חוזר משתלט 549 00:33:32,930 --> 00:33:36,950 הדיסק שלך לאותו חתיכות מדויקות של מידע. 550 00:33:36,950 --> 00:33:40,700 >> אז אם אנחנו עושים את אותו הדבר, זה לקח רק כמה שניות. 551 00:33:40,700 --> 00:33:48,860 אם אנחנו רוצים redeploy-- אז עכשיו אני צריך שלוש מכולות. 552 00:33:48,860 --> 00:33:56,160 אבל זה אחד הוא להיות מוגש על שבע כל-- אחד. 553 00:33:56,160 --> 00:33:58,860 אז עכשיו זה המכל השלישי. 554 00:33:58,860 --> 00:34:02,580 כולם מבינים מה שעשיתי כאן? 555 00:34:02,580 --> 00:34:06,320 >> אז עכשיו אם אתה רוצה לחלוק את זה מיכל אמיתי מהיר עם החברים שלך, 556 00:34:06,320 --> 00:34:14,840 אתה פשוט יכול לעשות דוקר לדחוף שמו של המכל, אני מקווה. 557 00:34:14,840 --> 00:34:20,130 אז עכשיו זה הולך לדחוף אותו צריכה-- אני לא חתמתי בכאן. 558 00:34:20,130 --> 00:34:33,511 559 00:34:33,511 --> 00:34:34,219 מצטער על זה. 560 00:34:34,219 --> 00:34:39,219 אבל אני לא הולך לפתור את זה עכשיו. 561 00:34:39,219 --> 00:34:42,780 אבל בעצם שפקודה אחת הוא רק הולך עד לדחוף אותו. 562 00:34:42,780 --> 00:34:45,670 ואתה הולך להיות מסוגל רואה את זה, אם אתה הולך לדוקר Hub 563 00:34:45,670 --> 00:34:48,587 ואתה מתחבר, אתה הולך להיות מסוגל לראות את זה. 564 00:34:48,587 --> 00:34:50,420 ואז אתה פשוט יכול להצביע מי שהולך 565 00:34:50,420 --> 00:34:52,750 להשתמש בתמונה שללכת ולמשוך אותו. 566 00:34:52,750 --> 00:34:55,460 והם יכולים להשתמש בו. 567 00:34:55,460 --> 00:34:57,760 >> עם זה, בתקווה אני סוג של הפגין 568 00:34:57,760 --> 00:35:01,230 כמה קל לעבוד עם דוקר. 569 00:35:01,230 --> 00:35:06,610 ואני רק הולך ל להחזיר להמן זה. 570 00:35:06,610 --> 00:35:11,760 והוא הולך לקחת את זה מכאן. 571 00:35:11,760 --> 00:35:13,990 >> מנו סימנים: בסדר תודה, תודה ניקו. 572 00:35:13,990 --> 00:35:18,700 573 00:35:18,700 --> 00:35:20,614 אז מה? 574 00:35:20,614 --> 00:35:24,410 אז אחד הדברים ש רציתי לעשות הוא להרכיב 575 00:35:24,410 --> 00:35:28,820 מדוע זה important-- מדוע ולמה דוקר 576 00:35:28,820 --> 00:35:33,000 מכולות הן כאלה פיתוח חדש וחשוב, 577 00:35:33,000 --> 00:35:36,890 דרך חדשה של תוכנה בעצם עושה. 578 00:35:36,890 --> 00:35:41,300 >> ולפני שאני עושה, אני הולך רק להציג כמה נתונים סטטיסטיים. 579 00:35:41,300 --> 00:35:42,790 אני לא הולך לקרוא את כל אלה. 580 00:35:42,790 --> 00:35:52,540 אבל זה מראה לך הרבה על איך פופולרי זה בקהילה. 581 00:35:52,540 --> 00:35:56,310 הטכנולוגיות דוקר הליבה הם קוד פתוח. 582 00:35:56,310 --> 00:36:03,560 אז זה דוקר מנוע, להלחין, נחיל, חבורה של דברים אחרים 583 00:36:03,560 --> 00:36:05,210 כל הקוד הפתוח. 584 00:36:05,210 --> 00:36:10,590 ויש לנו, מה עשה לי אומר, 1,300 תורמים. 585 00:36:10,590 --> 00:36:15,630 אתה רואה עכשיו, אם אתה מסתכל על מספר המשרות הפנויות, בפעם האחרונה 586 00:36:15,630 --> 00:36:19,640 אנחנו נראים, זה היה על 43,000 עבודה פתחים להזכיר במיוחד 587 00:36:19,640 --> 00:36:22,230 היכרות עם דוקר. 588 00:36:22,230 --> 00:36:26,450 מאות מיליון של תמונות יש לי כבר הורד מהדוקר Hub. 589 00:36:26,450 --> 00:36:31,870 וכן, גם הנתונים הסטטיסטיים הרבה יותר גדולים. 590 00:36:31,870 --> 00:36:34,770 >> למי הם סקרנים, זה נכתב במקור בפייתון 591 00:36:34,770 --> 00:36:37,730 ונכתב מחדש לאחר מכן לגו. 592 00:36:37,730 --> 00:36:40,320 וזה היה רק לפתוח source-- זה רק 593 00:36:40,320 --> 00:36:44,950 שוחרר לכ -2 ו1/2 שנים, מה שאומר שב 2 ו1/2 שנים, 594 00:36:44,950 --> 00:36:48,020 ראינו כמות עצומה של צמיחה וחשיבות 595 00:36:48,020 --> 00:36:50,190 זה בקהילה. 596 00:36:50,190 --> 00:36:52,400 וכך אני רוצה לדבר קצת על למה. 597 00:36:52,400 --> 00:36:54,940 598 00:36:54,940 --> 00:36:59,880 >> אז רק כדי לחזור ולהדגיש חלק מ נקודות המפתח של ניקו, דוקר היא מהירות. 599 00:36:59,880 --> 00:37:00,630 הוא נייד. 600 00:37:00,630 --> 00:37:02,500 זה לשחזור. 601 00:37:02,500 --> 00:37:06,130 וזה מגדיר את סביבה סטנדרטית. 602 00:37:06,130 --> 00:37:13,370 >> וwhat-- זה מחורבן פסלים למגר את slide-- מה 603 00:37:13,370 --> 00:37:17,990 זה עוזר לאנשים לעשות, ש הרבה של תעשיית התוכנה 604 00:37:17,990 --> 00:37:21,400 התחיל לעשות ב תחילת שנות ה -2000, נעה 605 00:37:21,400 --> 00:37:24,200 ממונוליטי אלה יישומים בודדים 606 00:37:24,200 --> 00:37:28,590 שבו כל תלות הייתה צריך להיות נבדק לפני שהייתה לי כל האפליקציה 607 00:37:28,590 --> 00:37:31,280 להתפרס, ש יכול להיות אתר אינטרנט 608 00:37:31,280 --> 00:37:36,240 רק יש לפרוס פעם כל שלושה חודשים, או יותר, 609 00:37:36,240 --> 00:37:42,650 לשירות הרבה יותר ארכיטקטורת מוכוונת 610 00:37:42,650 --> 00:37:46,090 או סוג אחר componentized של ארכיטקטורת יישום. 611 00:37:46,090 --> 00:37:48,610 וכך מאפשר אלה סוג של ארכיטקטורות 612 00:37:48,610 --> 00:37:52,250 המנצלים דוקר לרוץ בשלושה אלה 613 00:37:52,250 --> 00:37:58,450 אזורים עיקריים של פיתוח, ש הוא פיתוח כתיבת הקוד שלך בפועל, 614 00:37:58,450 --> 00:38:00,140 בדיקת הקוד שלך, ופריסתו. 615 00:38:00,140 --> 00:38:03,000 616 00:38:03,000 --> 00:38:05,420 >> אז למה זה חשוב? 617 00:38:05,420 --> 00:38:09,920 אם אתה זה-- תן לי לתת דוגמא. 618 00:38:09,920 --> 00:38:13,600 אם אתה אתר מפתחי מכשיר, אתה 619 00:38:13,600 --> 00:38:19,020 פיתוח אתר אינטרנט המבוסס על מסד הנתונים שהדוד מיוצר כאן. 620 00:38:19,020 --> 00:38:20,490 מצטער דוד, אני קורא לך. 621 00:38:20,490 --> 00:38:22,984 622 00:38:22,984 --> 00:38:24,900 אם אתה רוצה לפרוס כל הדבר, שהיית 623 00:38:24,900 --> 00:38:28,870 צריך לחכות תחת מסורתי פיתוח תוכנה מונוליטית 624 00:38:28,870 --> 00:38:32,710 סביבה, שהיית צריכה לחכות עד שהוא נעשה בבסיס הנתונים 625 00:38:32,710 --> 00:38:36,030 לפני שאתה באמת יכול לעשות כל שינוי באתר האינטרנט שלך. 626 00:38:36,030 --> 00:38:40,900 היית צריך לפרוס מחדש יישום כולו כדי לעשות זאת. 627 00:38:40,900 --> 00:38:45,490 >> ומה דוקר עוזר לך לעשות הוא כל עבודת אדם על מרכיבים שונים 628 00:38:45,490 --> 00:38:52,990 ולעדכן אותם כמו שהם הולכים, רק עושה בטוח שהממשקים להישאר אותו הדבר. 629 00:38:52,990 --> 00:38:56,350 אז מה שעשה הוא זה עבר אנשים 630 00:38:56,350 --> 00:39:03,950 מלעשות מונוליטי המסיבי אלה תוכנת הארכיטקטורה ש 631 00:39:03,950 --> 00:39:07,610 לפרוס בכל חודש לרציף אינטגרציה ופיתוח מתמשך 632 00:39:07,610 --> 00:39:08,490 סְבִיבָה. 633 00:39:08,490 --> 00:39:12,580 >> עכשיו זה לא ייחודי לדוקר, אבל דוקר עושה את זה כל כך הרבה יותר קל, 634 00:39:12,580 --> 00:39:16,620 מה שאומר שאתה בעצם כל הזמן פריסה. 635 00:39:16,620 --> 00:39:20,690 אנחנו מדברים עם חברות ש פריסת יישומי ציפוי ציבוריים 636 00:39:20,690 --> 00:39:30,180 אלפי פעמים ביום כי הם רואים את הערך בפשוט עושה 637 00:39:30,180 --> 00:39:33,740 שינויים קטנים, ועוד כפי שהוא פועל באמצעות הבדיקות, 638 00:39:33,740 --> 00:39:35,900 לתת לה לצאת לייצור. 639 00:39:35,900 --> 00:39:41,890 ניקו תמיד היה אומר לי מוקדם יותר באותו בסביבות רבות, 640 00:39:41,890 --> 00:39:46,580 מחזור החיים הסטנדרטי של מיכל נמדד בשניות, 641 00:39:46,580 --> 00:39:50,460 בעוד מכונה וירטואלית יכול להיות שנמדד בחודשים. 642 00:39:50,460 --> 00:39:54,590 643 00:39:54,590 --> 00:39:58,690 >> אני רוצה לקחת קל להפוך לכאן כי אני 644 00:39:58,690 --> 00:40:00,170 במוסד חינוכי. 645 00:40:00,170 --> 00:40:06,670 רציתי לתת דוגמא לאופן ש זה עובד במחקר חינוכי 646 00:40:06,670 --> 00:40:07,670 מַצָב. 647 00:40:07,670 --> 00:40:10,930 אז יש ארגון bioboxes נקרא. 648 00:40:10,930 --> 00:40:15,450 Bioboxes עושה DNA ניתוח לחוקרים. 649 00:40:15,450 --> 00:40:22,029 >> עכשיו מה שהם מצאו היה שכאשר researcher-- וזה לא 650 00:40:22,029 --> 00:40:24,070 אשמתו של כל פרט אבל כאשר researcher-- 651 00:40:24,070 --> 00:40:31,240 חוקר לפרוס אלגוריתם לנתח, 652 00:40:31,240 --> 00:40:36,670 בדרך מסוימת, דגימת DNA, הם יכתבו את התוכנה, 653 00:40:36,670 --> 00:40:39,980 לפרסם את זה, אולי ל GitHub או במקום אחר, 654 00:40:39,980 --> 00:40:42,680 ואז הם עשו. 655 00:40:42,680 --> 00:40:47,440 >> ובכן הבעיה הייתה שזה לא היה בהכרח לשחזור. 656 00:40:47,440 --> 00:40:51,610 כי כדי להבין את התוכנה, 657 00:40:51,610 --> 00:40:54,830 הם יהיו להגדיר ל סביבת פיתוח מדויקת 658 00:40:54,830 --> 00:41:00,460 שהחוקר שהשתמש, בדרך כלל המחשב הנייד שלהם, או שרת, או נתונים 659 00:41:00,460 --> 00:41:04,280 מרכז שהם משתמשים. 660 00:41:04,280 --> 00:41:11,530 וכתוצאה מכך, זה היה קשה מאוד כדי לשחזר את תוצאות מחקר כאשר 661 00:41:11,530 --> 00:41:16,910 ניתוח דגימות DNA להסתכל בדברים כמו incidence-- 662 00:41:16,910 --> 00:41:23,830 להשוות שכיחות של התקפי לב המבוסס על גנים מסוימים להיות נוכח, 663 00:41:23,830 --> 00:41:28,900 למשל, או את סיכון לסרטן, או כל אחד מהסוגים האחרים של דברים. 664 00:41:28,900 --> 00:41:33,900 >> אז מה שהם עשו היה במקום הם החלו ליצור מכולות. 665 00:41:33,900 --> 00:41:39,380 ואתה יכול ללכת לbioboxes.org, זה ארגון גדול. 666 00:41:39,380 --> 00:41:43,900 ומה שהם עושים הוא שהם מייצרים מכולות המבוססות על מחקר. 667 00:41:43,900 --> 00:41:46,840 ואז בכל פעם שמישהו שולח במדגם שלהם, הם יכולים להפעיל אותו. 668 00:41:46,840 --> 00:41:52,770 ויש לו את כל הסביבה צריך להפעיל אלגוריתם ש 669 00:41:52,770 --> 00:41:55,370 ולייצר תוצאות. 670 00:41:55,370 --> 00:41:58,250 והם מגלים שהם הרבה יותר סביר והרבה 671 00:41:58,250 --> 00:42:01,300 יותר מהר תוכל להחזיר תוצאות לאנשים. 672 00:42:01,300 --> 00:42:06,860 >> ולמעשה, מה שאנשים עושים מפעילים ניתוח שלהם על ה- DNA, 673 00:42:06,860 --> 00:42:11,220 שליחה שלbioboxes, ו אז biobox פשוט לוקח את הנתונים, 674 00:42:11,220 --> 00:42:15,350 מפעיל אותו נגד המגוון מיכלים שונים של 675 00:42:15,350 --> 00:42:19,030 כדי לראות תוצאות שונות בהתבסס על מחקר שונה. 676 00:42:19,030 --> 00:42:21,860 אז זה מאוד חזק אופן שבו חוקרים 677 00:42:21,860 --> 00:42:28,070 יכול לעשות מופע יחיד המאפשר אנשים אחרים כדי לנסות ולשחזר 678 00:42:28,070 --> 00:42:28,650 התוצאות. 679 00:42:28,650 --> 00:42:31,710 680 00:42:31,710 --> 00:42:34,360 >> אז איך לך להתחיל? 681 00:42:34,360 --> 00:42:37,950 682 00:42:37,950 --> 00:42:39,800 אנחנו נתמכים גם על לינוקס. 683 00:42:39,800 --> 00:42:43,070 אז אם אתה רוצה להתקין שום דבר על לינוקס, 684 00:42:43,070 --> 00:42:45,620 אתה משתמש רגיל שלך מנהל חבילות להתקנה. 685 00:42:45,620 --> 00:42:47,600 אם אתה משתמש בדביאן, זה הגט מתאים. 686 00:42:47,600 --> 00:42:50,500 CentOS הוא יאם. 687 00:42:50,500 --> 00:42:53,500 פדורה רד האט הוא rpm-- אני לא זוכר. 688 00:42:53,500 --> 00:42:56,070 בכל מקרה, זה כל מה שיש. 689 00:42:56,070 --> 00:42:59,610 אנו תומכים במגוון רחב של הפצת לינוקס. 690 00:42:59,610 --> 00:43:01,150 אתה יכול לבדוק אותם החוצה. 691 00:43:01,150 --> 00:43:06,370 >> יש לנו גם אפשרויות, כך ש יכול לרוץ על Mac או Windows. 692 00:43:06,370 --> 00:43:10,670 עכשיו ניקו ציינו שקודם לכן זה נתמכה רק על לינוקס. 693 00:43:10,670 --> 00:43:18,180 זה נכון, כי זה צריך הקרנל של לינוקס. 694 00:43:18,180 --> 00:43:20,540 אבל, אתה יכול לרוץ במכונה וירטואלית. 695 00:43:20,540 --> 00:43:25,290 ומה את ארגז הכלים דוקר עושה, שבו אתה יכול להוריד, 696 00:43:25,290 --> 00:43:27,610 זה נותן לך שהמכונה וירטואלית. 697 00:43:27,610 --> 00:43:37,260 >> 48 אז פשוט מהיר שני, אני חושב, להוריד. 698 00:43:37,260 --> 00:43:40,670 אתה פשוט לחפש בדוקר ארגז כלים, להוריד אותו ל- Mac, 699 00:43:40,670 --> 00:43:43,910 וחלק זה הוא של כמובן האיץ כי מי 700 00:43:43,910 --> 00:43:47,620 רוצה לראות אות להורדה? 701 00:43:47,620 --> 00:43:54,190 התקנה סטנדרטית מק, ואז אתה 702 00:43:54,190 --> 00:43:59,795 הולך לראות ג'רום לשים בסיסמא שלו. 703 00:43:59,795 --> 00:44:00,670 זה מאוד מרגש. 704 00:44:00,670 --> 00:44:03,510 705 00:44:03,510 --> 00:44:06,230 ואז זה מתקין כל חבורה של כלים. 706 00:44:06,230 --> 00:44:10,010 ובמיוחד שזה יהיה התקנה של שורת הפקודה. 707 00:44:10,010 --> 00:44:14,220 ואז אתה יכול לראות ג'רום בדיקת התמונות שלו. 708 00:44:14,220 --> 00:44:19,050 709 00:44:19,050 --> 00:44:22,640 >> ולאחר מכן על בסיס זה, אתה יכול לראות שYouTube 710 00:44:22,640 --> 00:44:27,420 חושב שניקו מעוניין ב מלחמת כוכבים, מופע ג'ימי קימל, 711 00:44:27,420 --> 00:44:29,020 ואני חושב שאלן. 712 00:44:29,020 --> 00:44:34,130 אני חושב שאחרון הוא קליפ ממופע אלן. 713 00:44:34,130 --> 00:44:37,760 >> אז דוקר ארגז כלים מגיעים אף עם יותר מסתם מכונת דוקר. 714 00:44:37,760 --> 00:44:39,840 אז דוקר מכונת היא הדבר שעוזר 715 00:44:39,840 --> 00:44:43,710 אתה מגדיר את וירטואלי מכונה על Windows שלך 716 00:44:43,710 --> 00:44:52,080 או Mac-- התיבה של Windows או Mac שלך box-- ועוזר לך לעשות את ההקצאה, 717 00:44:52,080 --> 00:44:54,040 >> אבל זה מגיע גם עם נחיל ולהלחין, 718 00:44:54,040 --> 00:45:00,840 אשר נועדו לעזור לך לעשות גדול פריסות בקנה מידה של היישום שלך. 719 00:45:00,840 --> 00:45:04,000 אז אם אתה רוצה לנהל אשכולות של בלוטות, 720 00:45:04,000 --> 00:45:08,450 אשכולות של מכולות, להלחין ו נחיל הוא הדרך ללכת על זה. 721 00:45:08,450 --> 00:45:11,430 >> וכמובן שהוא מגיע עם מנוע דוקר וKitematic, 722 00:45:11,430 --> 00:45:13,250 אשר הוא GUI שולחן עבודה זו. 723 00:45:13,250 --> 00:45:17,060 אני צריך גם להזכיר דוקר רישום, שאינו כלול בארגז כלים, 724 00:45:17,060 --> 00:45:23,150 אבל את זה הוא דרך בשבילך לרוץ משלך רישומים של תמונות דוקר כמו דוקר 725 00:45:23,150 --> 00:45:28,970 רכזת, אבל אתה יכול גם פשוט להשתמש דוקר Hub כדרך לעשות את זה. 726 00:45:28,970 --> 00:45:32,955 >> ו, טוויסט עלילה, אתה רואה זה פועל במכל. 727 00:45:32,955 --> 00:45:34,830 וככה אנחנו הפצת השקופיות שלנו. 728 00:45:34,830 --> 00:45:38,610 כל מצגת זו למעשה סיפון שקופיות HTML. 729 00:45:38,610 --> 00:45:43,170 והוא פועל ב מיכל, שבו אתה יכול לקבל by-- 730 00:45:43,170 --> 00:45:45,596 >> ניקולה kabar: כן, אז זה פועל במשרה מלאה במקס שלי. 731 00:45:45,596 --> 00:45:47,540 ואני מציג מזה. 732 00:45:47,540 --> 00:45:50,910 ואתה פשוט לעשות דוקר לאחר התקנת ארגז הכלים שלך. 733 00:45:50,910 --> 00:45:57,340 אתה פשוט יכול לעשות ריצה דוקר ולקבל את זה, ולהשתמש בשקופיות. 734 00:45:57,340 --> 00:45:58,830 >> מנו סימנים: וזהו זה. 735 00:45:58,830 --> 00:46:02,160 אז אנחנו מודים לכולכם שבאתם. 736 00:46:02,160 --> 00:46:03,990 ואנחנו שמחים לענות על שאלות. 737 00:46:03,990 --> 00:46:07,810 אני צריך להזכיר לפני שמישהו משאיר יש חולצות שם. 738 00:46:07,810 --> 00:46:10,940 מצטער כל מי שצופה בי זה על Livestream או וידאו, 739 00:46:10,940 --> 00:46:12,820 אבל יש לנו דוקר חולצות שם. 740 00:46:12,820 --> 00:46:16,250 ואנחנו יודעים תלמידים דוקר, ובניסיון שלי, 741 00:46:16,250 --> 00:46:18,940 פרופסורים מדי, כמו בגדים בחינם. 742 00:46:18,940 --> 00:46:22,490 >> אז תודה לכולכם על שיצא. 743 00:46:22,490 --> 00:46:27,050 ולעקוב אחרינו בטוויטר אם אתה רוצה, או לא. 744 00:46:27,050 --> 00:46:27,910 לא אכפת לי. 745 00:46:27,910 --> 00:46:29,430 גם אחרי דוקר בטוויטר. 746 00:46:29,430 --> 00:46:31,890 זה גם מעניין. 747 00:46:31,890 --> 00:46:32,990 ואז זהו זה. 748 00:46:32,990 --> 00:46:33,490 Docker.com. 749 00:46:33,490 --> 00:46:35,410 תודה. 750 00:46:35,410 --> 00:46:39,360 >> [תְשׁוּאוֹת] 751 00:46:39,360 --> 00:46:41,625