>> [Музички]
Дејвид MALAN: Во ред.
Многу ви благодарам што дојдовте.
Ова е CS50 семинар на докер, односно технологија која себеси и CS50 ние
започнале да го користат за некое време сега.
Па, моето име е Дејвид Malan, јас учат Харвард Вовед
за компјутерски науки.
Веќе неколку години, ние сме биле давање на студентите
превземање на клиент-страна виртуелни машини
на кој тие го прават проблеми на нивните групи.
Дека сега имаме transitioned на животната средина Облак
кои, всушност, ја користи оваа технологија наречен Docker, како што сите CS50
учениците сега имаат сопствена докер контејнери
дека наскоро ќе се слушне за сите.
>> Згора на тоа, на серверот е CS50 страна кластер, за многу години
бевме користење Облак серверот на Амазон.
Ние трчавме поединец виртуелни машини.
И тоа, ние сме почнале да транзиција кон овие работи вика докер контејнери
така што сите наши апликации се сега совршено изолирани една од друга.
Па за тоа и многу повеќе, дозволете ми да воведе нашите пријатели, Нико и Мано,
од самиот докер.
Nicola KABAR: Ви благодариме, Дејвид.
Здраво на сите.
Се викам Нико и ова е Мано.
Ние сме од докер.
Ние се случува да се зборува about-- давајќи ви момци вовед да докер,
и се надевам, кон крајот на овој разговор може да се реализира
колку ќе можат да го користат лекар за да оксалат вашиот развој на апликации
и распоредување.
>> Значи, ние ќе треба да почнат вистински брзо со некоја позадина информации.
Докер опише она што е за сите.
Како работи?
Како се architected?
Јас ќе се прави некои демо снимки.
Мано и ќе биде опишувајќи како можете да го користите докер
и ви даваат конкретни чекори како можете да започнете.
>> Јас ќе ја цениме ако вие момци можат да се одржи надвор за вашите прашања кон крајот.
На тој начин, би можел да биде решавање на оние прашања во текот на презентацијата.
Па ние ќе остави некои време кон крајот на прашањата.
>> Па само вистински брз, кој има всушност некогаш работеле на докер,
како игра со неа?
Страшни.
Кул.
Одлично.
Па, јас ќе одам да се започне со некои историја.
Па назад во 90-тите и почетокот на 2000 година, во основа
како веб програмери, стан програмери, кога отишле да се распоредат апликации
тоа бил врзан со голи метал.
Тоа беше еден сервер.
Тоа беше една апликација.
>> Традиционално, на пример ќе биде како LAMP оџакот,
каде што, всушност, мораше да пренесат на базен на ресурси.
Процесорот, меморија, диск, мрежна, монтажа оперативниот систем на врвот на тоа.
Ако сте служат нешто, ако ти си, всушност имаат веб сервер,
ви треба нешто како Apache-то да го служи.
>> Ако вашата апликација треба база на податоци, бекхенд,
сакаш да инсталирате нешто како MySQL, и така натаму.
И ако ви треба време во бегство, PHPs PHP и Python работа беа таму.
И така ние всушност мораше да преземат тие чекори, со цел
да ја добиете вашата апликација и трчање.
>> Ако ви се потребни повеќе пресмета моќ вас, основа мораа да се јавите на вашиот дечко Ops
или gal да одат и да решетката до нова парче на хардвер, тоа се поврзете,
и ќе мора да се повтори оние процеси повторно и повторно.
Па овој процес е релативно скапи.
Дефинитивно беше многу бавен.
>> Тоа е неефикасна.
И во многу случаи, вашиот хардвер беше недоволно искористени.
Значи, во доцните 90-ти и раните 2000-ти, хардвер виртуелизација наидов.
И како можете да ја видите овде во слика, во основа она што го направија
се црпи редот на слободен хардвер ресурси
и вид на сервира оние на горниот дел на слоеви,
во овој случај, гостин оперативен систем.
>> И целата идеја на виртуелни машини наидов
и дека навистина помогна Облак компјутери како што го знаеме денес.
Така што тоа значи дека ќе е можат да работат повеќе виртуелна машина, која
значеше повеќе Купишта, повеќе примена на истите физички машина.
>> Ова дефинитивно помогна со брзината на примена распоредување.
Дефинитивно со трошоци.
Вие не треба да одат и да се трошат енергија, време и ресурси за да решетката
повеќе сервери за да се дојде до повеќе пресмета.
И брзината всушност доведување овие средства се е многу побрзо.
Одлично.
>> Значи ние се реши гладот ​​во светот, нели?
Не, навистина не.
Така, виртуелизација, колку што тоа е всушност помогнале, решавање на проблемот,
тоа всушност воведе многу предизвици.
Хипервизорот дефинитивно воведе многу сложеност,
ракување со тие основни базен на ресурси.
>> Тоа е потешко, во смисла дека пред сте имале еден оперативен систем кој
е како три, четири свирки на дискот.
Сега, ако имаш 10 машини на еден хардвер
ќе мора да го помножите според бројот на машини.
Тоа е дефинитивно повеќе скапи во некоја смисла се уште
Мора да се добие лиценца за виртуелизација технологија
ако тоа не е со отворен код.
>> Но, ајде да не ги преземе сите кредит од виртуелизација.
Поради тоа што се случи е има многу Купишта и многу софтвер
технологии кои им било овозможено од тоа колку брзо сте биле во можност да се добие
до ресурси со бумот Облак.
>> Значи, денес еден стан или услуга може да биде со користење на која било од следниве runtimes
или бази на податоци.
PHP, Python, MySQL, Redis, какво ли не.
Значи има многу на комплексноста на овој број на оџаци за да всушност се донесе до
една услуга.
И заедно со тоа, ќе имаше многу основните ресурси или инфраструктура
видови да се тестира се распореди и во основа преземат за производство на оние апликации
дека сте во развој.
>> Особено поради тоа што вашите тимови имаат одгледувани работат на овие апликации,
има многу комплексноста и предизвиците
кои беа донесени за да се обезбеди cycle-- основа на примена
развоен циклус, е всушност успешна.
Значи, фактот дека вашата апликација работи локално на вашиот локален В.М.
не гарантира дека вашиот колега се случува да се очекуваат истите резултати.
>> И кога тимот на операции е кои се вклучени во земање она што го имате
и имплементирање во производство скала, исто така, не постои гаранција
дека тоа е всушност ќе се случи.
Па ова ни остава со многу big-- многу прашалници,
многу предизвици, всушност, соочуваат слично назад во деновите.
И дека не потсети превозот индустрија.
>> Па превозот индустрија имаше голем број на стоки,
како што можете да видите на левата страна.
А од десната страна, има многу, во основа,
начини да го пренесе на тие стоки.
И што се случува како двојка луѓе се собраа и рече:
ние треба да се стандардизираат како ние всушност брод со таа стока.
И бум, ќе имаат интермодални превозот сад.
>> Така што тие се согласија за повеќето заеднички големини за сад.
Како да се справи со нив.
Што точно метод што треба да ги вчитате и ги исклучи.
И според тоа, дека навистина помогнаа превозот индустрија.
Сега, повеќе од 90% фокус транспортирани глобално користите овие садови.
И дека дефинитивно се намалува трошоците, како и
штетата поради превозот.
>> За да можеме да го заземат истиот модел и ние применуваат за развој на софтвер на две стан
архитектура, во смисла дека containerization
зеде виртуелизација до едно ниво.
Така, наместо тоа да го направам на ниво на хардвер,
стана повеќе од оперативниот виртуелизација на ниво на системот.
>> И тоа го правиме преку обезбедување на секој примена во свој лесен,
изолирани, Runnable, и пренослив, што е најважно,
начин да се всушност пакет сето она што е потребно да се кандидира.
Било каде што може да се кандидира.
Значи, без разлика ако сте го извршува на dev локалната средина, вашето производство
животната средина, вашиот стоп или тестирање.
Не е важно што во основата инфраструктура е таму,
сте имале функционален работат стан.
>> Па тоа е токму она што во основа контејнери за да се направи овој проблем.
Тие се однесуваат на него од страна на тоа пакување на таков начин
дека тоа може да гарантира дека е распоредена успешно, без разлика каде живее.
Значи, ако си оди како, Боб тоа е сепак ОК.
Ако сте збунети со ова што го кажувам, Одам да се кажеме нешто повеќе за тоа.
>> Па како не се докер се вклопуваат во оваа слика?
Па докер е отворена платформа лесно, лесно да се нагласи,
да се изгради брод, трчаат, лесни преносни себе
доволно контејнери стан секаде.
Па ако се земе нешто од ова разговор, преземете ги следниве.
>> Ако имате на вашиот стан трчање на локално ниво и да го развива
со користење на платформата докер, се очекува тоа да биде успешно распоредени.
Без разлика на она што е основната инфраструктура.
Значи, ако имаш докер сад и тоа е работа, тогаш
се додека има докер мотор од друга side--
ако вашата работа инфраструктура е со користење на било Облак, без разлика дали тоа
AWS е, или на Google, или Microsoft, или било која од јавноста облаци,
или свој облак, или вашиот отворен магацинот Облак, или во вашата локална средина.
>> Ако имаш мотор работи, тоа значи
тоа се случува да биде успешно распоредени таму.
Тоа се случува да се работи токму истото однесување
како што ти го architected да биде.
Па ако гледаме at-- Одам да се оди преку она што, всушност,
се во главните компоненти на докер.
>> Па на моторот е во сржта на докер.
Тоа е на мозокот.
Го оркестрира зграда, превозот, и имплементирање и управување со
самите контејнери.
Јас ќе се копа во она што го прави на мотор во повеќе детали во една секунда.
Во основа, бидејќи Докторот бил изграден околу клиент сервер архитектура на,
па со цел да се во интеракција со Моторот треба некој вид на клиент.
>> Сликите се со шаблони во кои се изградени од контејнери.
Па сликите се во основа само статични слики.
Обрасци и контејнери е, всушност, што е
се извршува за време на извршувањето на тој се наоѓа на издржување на вашата апликација
или прави нешто со податоците.
>> Регистар се однесува како проблем на како вие всушност го дистрибуирате слики.
Значи, ако сакате да споделите слика кои ви се работеше на вашиот колега
или до тимот на опс, можете го користат за користење на регистар.
Може да го симнете со отворен код верзија на тоа дека докер работеше на
и отворете извори.
>> Или можете да го користите докер помош, што е Облак верзија
да им помогнам и повлечете слики таму.
Тоа е огромна работа.
Бидејќи постои огромна екосистем околу докер и тоа е
навистина силно користење на центар.
>> Значи да резимираме тука, ова е начинот на минималистички докер клиент тек на работа.
Можете да разговарате со домаќинот, во овој случај тоа е демони докер.
Тоа е исто што и мотор.
Го прават команди како Докер изгради, се повлече, се во бегство.
И самиот мотор оди и прави тие работи.
>> Значи или тоа се поврзува со Регистарот да ги повлечат овие слики
и слоевите на слики.
Без разлика дали сакате да се распореди, работи контејнери, ги убие, ги фрли долу,
какво ли не.
Па ова сумира работното на сите овие компоненти.
>> Па ако се земе секој составен дел од себе.
Па на мотор, тоа е само еден демон.
Тоа ќе го вид на игра за поддршка тоа на Линукс, бидејќи тоа го прави
бараат одредени карактеристики Линукс кернелот.
Но на Windows работи на прават истото.
Тоа би требало да биде поддржана од страна на Windows Server 2016.
>> Значи, повторно, одговорностите со моторот е да, или да се, да се изгради слики.
Повлечете слики од докер Центар или вашиот регистар.
Ако сте се направи со овие слики или ќе се создаде нова слики,
можете да им помогнам на оние назад до регистарот да ги дистрибуира до другите тимови.
>> И се обидува да го потиснеме локално и управување со животниот циклус на контејнери
на локално ниво.
Таа е изградена околу HTTP ОСТАНАТОТО API.
Па технички можеш напишете свој клиент
колку што тоа го користи HTTP, што е многу стандарден механизам да разговара со мотор
и многу други услуги.
И можете да видите од тука дека без оглед
на она што на инфраструктурата е, се додека вие can-- сите
ви треба е оперативен систем, Линукс конкретно.
>> И можете да го инсталирате докер мотор згора на тоа и да го работи
и го оркестрира, во основа, сите овие стан еден, два,
а три се вистинските контејнери.
Па тоа е мотор.
Како што споменав порано, бидејќи ви се потребни за да комуницирате со мотор,
има клиентот.
>> Но всушност кога ќе се инсталира Пристанишен работник, бродови со него.
Па тоа добива инсталиран, па тоа е една бинарна.
И што можете да направите локални разговори докер на вашиот мотор.
Или далечински повици до оддалечените Прелистувачи.
Тоа не се користи HTTP, како Што споменав порано.
Има еден GUI клиент наречен Kitematic од докер.
И има дефинитивно голем број на други луѓе
кои се градење на многу GUIs, која во основа се имплементираат
некои HTTP повикува да разговара со мотор.
>> Само некои мостра команди.
Ако го направите докер верзија, што би ви го покаже верзијата на клиентот, како и
на серверот за печатење.
Ако го направите тоа ќе докер инфо ви кажам на сите информации
за тоа колку контејнери се работи или создадени, колку слики што ги имате,
и така натаму и така натаму.
>> Еве ги имаат, во близина на последната кутија, имам Доктор рок.
Па тоа е како јас сум, всушност, создавањето сад.
И јас сум го предаваш на ехо Здраво Светот и спие за една секунда и какво ли не.
И може да се види резултат. Така, тоа е во тек.
И слични на Линукс PS, може да се види сите процеси, а во овој случај,
сите контејнери трчање.
Ова ми е навраќајќи се контејнерот јас само замислен.
>> Значи, ова е навистина важно, бидејќи, како, тоа може да биде малку збунувачки.
Па сликите се само за читање колекција на датотеки, нели?
Тие се она што нашите контејнер е врз основа.
Но тие се само за читање-само.
Па да започнете со база на сликата.
Тоа има тенденција да го имитираат ОС-како, па Убунту, CentOS, какво ли база сликата.
А потоа ќе започне изградба на врвот дека, одредени слоеви, кои ќе го сочинуваат
Вашиот end слика, на крајот доведе овде.
>> И секоја од овие слоеви треба да имаат слика родител
дека тоа упатува кога всушност сака да се создаде.
Тие се непроменливи, во смисла дека, бидејќи тие се само за читање,
вие всушност не можат да се прават промени на нив.
Можете да ги користите за да се создаде сад од една слика, која
ќе се повикувам сите последователни приложи сликата под него.
>> Можете да направите промени на различни слој,
тоа е преработи слој Јас ќе се зборува за во една секунда.
Но, секоја од овие слоеви никогаш не се менуваат.
Слики во основа се користи нешто наречен Унија, UFS датотечни.
А постојат различни складирање позадини кои користат оваа технологија.
И што значи тоа е дека среќаваат различни датотечни системи
да ги направи да изгледаат како една.
>> Така може да се, всушност, од перспектива на пријавата,
имате врвот на ставот дека емисии сите различни датотечниот систем е потребно
за таа апликација да се кандидира.
Но тие се всушност, основа на ова, тие се всушност во одделни места
и се користени од страна други контејнери, како и.
>> Па како што можете да видите тука ако почнеме со даемонот слика
како база на слика, а потоа ние одиме и да го додадете [? Emacs?]
и тогаш тоа е уште еден слој.
И потоа додадете Апачи.
Тоа е уште еден слој.
А потоа ние ја поминат контејнерот, од тоа.
Секоја од овие слики, секоја од овие слоеви,
е различна и може да биде повторно да се користи од страна на други контејнери.
>> Ако се погледне на самите контејнери, тие се некако слични на В.М.-како,
но не се третира исто време.
Значи, тие не мора, технички, целосен оперативен систем под нив.
Тие ги користат еден кернелот на домаќинот оперативен систем.
И тие се изгради на врвот на тоа.
Тие го имитираат во тоа како тие изгледаат.
Тие го имитираат својот корен датотека систем на оперативниот систем.
Но, тие, всушност, не се реплицира.
>> Значи, наместо да има непроменлива слоеви, последниот слој, кој е на контејнерот
себе, тоа е за-читање пишуваат слој.
Кои, исто така, работи на процеси на вашата апликација.
И тоа ќе зависи од основните слоеви.
Секој сад е креирано од сликата.
И дека сликата може да биде една слој или повеќеслојни сликата.
>> И сакам да се напомене тука дека докер силно го користи,
или се базира на копи-на-Напиши механизам.
Така што, всушност, ако не се правење на промени во контејнер,
тоа не се случува да се земе дополнителен простор.
Значи, тоа е во основа како што го резимираме на копи-на-пишуваат.
Тоа се случува да дефинитивно се забрза на времето на подигање на садот.
Бидејќи ако не се прави промени на контејнерот,
тоа е искористување на она што е веќе таму.
>> Значи, како што всушност се работи.
Дел од тоа е како, токму сега, тоа користи најмалку две клучни кернелот
карактеристики.
И тоа е во основа она што создадена тоа ниво на изолација
за самите контејнери.
Тие карактеристики се именски простори и cgroups.
Па именски простори се начин да се создаде изолирани ресурси,
така што во рамките на самиот контејнер, само што можете да видите некои ресурси.
Како што се на интерфејс за вмрежување или на одредени корисници или какво ли не.
>> И оние кои се видливи само и само достапни во рамките на контејнерот.
Cgroup на другата страна граници како ќе ги користат овие средства.
Процесорот, меморија и диск.
Кога ќе може да оди во, јас значи дека овие се всушност
функции, кои беа развиени by-- тие се дел од Linux кернелот.
Така што тие не беа reinvented страна или од страна на докер пресоздава.
Докер да ги користи.
>> Што доктор навистина тука е всушност тоа
Оркестрирано креирање именски простори за секој контејнер
и создавањето на cgroups така што тоа е смешно лесно да се создаде контејнери
користење на овие функции.
Се разбира, како што е опишано претходно, Унијата Датотечни системи и копи-на-Напишете навистина
им помогне на брзината и на дискот користење на контејнери.
>> И штом еднаш ќе добиете вашата раце околу докер,
си оди за да видите колку брзо тоа е да всушност се вртат до контејнерите и солза
ги надолу.
Значи, ако може да се прашуваат како може што всушност се изгради слики?
Ние градиме слики од процесот на создавање на контејнери и правење на промени, менување
нив, и дека ги извршил за да стане една слика.
>> Па тоа е пилешко и референца јајце тука,
бидејќи сите контејнери се од слики и сликите се
извршени од контејнери, во поголемиот дел.
Постојат три опции да се создаде слики.
Одам да се опише прв и последен.
Можете или рачно одат и да ја стартувате на контејнерот
и да направат тие измени, како што би го направил на било В.М.
или било кој оперативен систем, како на инсталирање на нови бинарни датотеки,
додавање на датотечни системи, и какво ли не.
>> И тогаш ќе излезете, како може да се види таму горе.
Јас сум во моето излегување сад.
А потоа правам докер извршат.
И јас сум сторено тоа.
Може да се види дека бројот тука е само UUID, или првите 12
битови на UUID.
Или бајти од UUID.
И тогаш јас сум нарекувајќи ја мојата слика.
Па сега докер се грижи за снимањето се што јас го направив тоа
и создавањето на нови слика врз основа на тоа.
>> Јас не одам да се зборува за tarball, но постои начин можете да добиете еден,
се создаде една, или да се направи еден слој сликата користејќи tar топки.
Она што јас ќе одам да се зборува за ова а она што е најмногу се користи и денес,
е Dockerfile.
Која што е технички првиот чекор автоматски по себе докер.
Па Dockerfiles се работи кои сте случува да се види во многу GitHub Repos
денес.
Тоа е во основа, само текстуална датотека опишувајќи
точно како да се изгради имиџ.
>> И за секоја линија, тоа всушност создава на контејнерот, извршува таа линија,
се обврзува дека во контејнер нов имиџ, а ти, во основа,
го користат за сите следни операции додека не стигнете до последната слика.
Која е основа на завршуваат цел овде, на крајот.
И откако ќе exec-- откако ќе напишете вашиот Dockerfile, која
е чисто во текстот, ќе се направи докер изгради и името на сликата.
>> А ти се укаже на тоа дека таа е каде што Dockerfile е во.
И може да се очекува да се види мојата слика како на сликата што имате локално.
Па тоа е само визуелен пример за она што се случува.
Ќе почнете со база на сликата.
Дека ќе се кандидира во контејнер кој не ја менува основната самата слика.
Но, наместо да создава преработи слој на врвот на тоа
каде што можете да промените, во која ќе се изврши
и можете да го повтори процесот до ќе стигнете до вашата крајна сликата.
>> И со тоа, секој друг да се изгради Процесот може да се користи истата слоеви
и same-- основа Докер кешира оние слоеви.
Така што ако јас го правам исто точно процес, но наместо да го инсталирате PHP,
Јас сум инсталирање Пајтон.
Тоа се случува да го користите Apache и Ubuntu.
Па на тој начин си користење на Вашиот диск.
Тоа е користење на кеш и слики кои се достапни таму.
>> Последниот дел е регистар, кој е како да го дистрибуирате вашето слики.
И, како што споменав порано, има Облак верзија на него,
кој е докер Hub.
Може да се оди и да се истражуваат многу, во основа
тоа е од јавен производ САС дека сеуште може да има приватни слики,
но има голем број на јавни слики.
Тоа е всушност неограничен, можете да притисни неограничено јавни слики таму.
И ова е како што можете да соработуваат со вашиот тим.
>> Вие само може да им укаже на вас репо и тие може да го симнете или вашиот имиџ
и тие може да го преземете.
Значи доволно со разговор.
Кој сака да види некои демо снимки вистински брз?
Во ред.
Па еве го имам.
Ca вие момци се види мојот екран?
Во ред.
>> Па имам докер работи тука, па може да се провери it's-- Ова е верзија
на докер тоа е водење.
Може да го направи докер информации.
Провери сите информации за тоа колку слики, тие имаат, и така натаму и така натаму.
Докер КС, нема ништо да работи.
Оние кои се споени.
>> Така првото нешто што сакате да направите е да се покаже вие колку лесно може да се кандидира на сад.
Па за убавина Лекар работи, ако тоа всушност
не најде слика на локално ниво, по дифолт не разговара со доктор Hub
и се обидува да го најдете таму и преземања за вас.
Па тоа вклучува докер повлечете команда, природно.
>> Значи, ако јас се направи докер рок, здраво-светот.
Значи, прво тоа се случува да се обиде да го лоцира.
Инаку, како што можете да ја видите тука, тоа не може да го најдете на локално ниво.
Токму сега тоа само влечат два слоја што го направи таа слика и ми се стрча.
Здраво свет е само основа излези, она што сте го направиле.
Значи ова е најлесно, еден од најлесните примери.
Така всушност јас само се стрча и престанува контејнерот вистински брз.
>> Ако сакам да run-- и патем, ако Сакам да го времето што, само да знаете,
ова е колку време е потребно за да се всушност се вртат и го содржи.
Ние сме го мерење во милисекунди.
Па можете да видите колку тоа може всушност ви помогне не само во тестирањето,
но, исто така, дури и распоредување.
Значи, тоа е брзо белешка за тоа.
Следното што сум одам да направите е, всушност,
се кандидира слика Јас веќе подготвени.
Па докер рок.
-d е само знаме да се каже да работи во позадина.
И -p доделува одредени порти.
Затоа што по дифолт, контејнери се изолирани,
па мора да се определи точно како тоа може да им пристапите.
И во овој случај, јас го кажувам докер за да на сајтот случајна порта на компјутерот
до одреден порт рок на самиот контејнер.
И тоа е во основа, каде што image-- се надевам дека ова е вистинскиот.
>> Па тоа го прави паралела симнувања секоја од тие слоеви, како што можете да видите тука.
Тоа се прави на слоеви крајот слика која јас ја направив.
Тоа се случува да се земе втора.
И Voila.
>> Па сега ако јас се направи докер PS, јас треба види нешто што е во тек.
Јас треба да се види на проект, на сликата дека ова е базирана,
и ја командата која беше погубен.
И како да пристапите тоа е во основа ќе отидете на таа порта.
Па јас ќе одам да си to-- ова е јас сум таа се извршува на AWS.
Одам да се оди на 32.769.
Упс.
И тука ќе одиме.
>> Значи ова е всушност само веб сервис кој покажува
кој контејнер тоа е се служи од.
За да може да се види дека тоа е од садот a9f.
И еве ова е името на садот.
Па вие момци можат да се види колку брзо тоа беше да се, всушност, не само што се повлече, но, исто така,
распоредат оваа сад.
>> Сега, следниот чекор е да се погледне во Dockerfiles
и како можеме да всушност изградат нови слики.
Јас сум само ќе одам да купам клон, односно на примерок Dockerfile врз основа на претходно
дијаграм, еден да Apache и PHP.
Се надевам дека се сеќавам ми репо.
>> Па имам складиштето во моментов.
И ви се случува да се види ова е многу, всушност.
Јас не инсталациско дрво.
>> Значи, во основа си оди за да се види како вашиот изворен код документација околу
тоа, а потоа и Dockerfile на како да се, всушност, го пакет.
Па тоа е само еден примерок на PHP што одекнува здраво CS50.
>> Па ако сакам да го работи, Ќе се направи докер изгради.
Морам да ја изгради првата.
Одам да го именува demo_cs50.
И ви е потребна некоја ознака на него исто така.
Па ајде да го наречеме в1 точка.
Значи како што е опишано претходно, она што го правам денес
е јас кажувам докер да одат употреба that-- всушност, извинете, моето лошо.
Ние не ги погледне на самата Dockerfile.
Така што само тука се работи во index.php како ја датотеката
и Dockerfile.
>> Значи, ако сте ја погледнете на Dockerfile, така што е
многу сличен на она Што е опишано претходно.
Тоа е само еден куп на чекори кои докер извршува
со создавање и уривање контејнери и [? броење?] нив во една слика.
>> И во основа може да се see-- [Беззвучен] тоа here--
но ова е од локалната репо.
Тоа се случува да се оди и го имате index.php.
Така што тоа е единствениот код која се всушност дел од вашата апликација.
Сето ова во основа се оперативен систем водовод,
добивање на правото на пакети и Apache-то, и PHP, и какво ли не.
Но ова го зема index.php и тоа извршување во контејнерот,
во сликата.
>> Па ако може да оди напред и да ја стартувате команда од тоа што следува,
тоа е going-- всушност, ова може да потрае малку.
Се надевам дека тоа не презема премногу долго.
Па можете да видите на чекори.
И јас ве охрабруваме да се оди дома денес и пробајте го.
Мано и ќе се опише како точно да го направите тоа.
Но тоа е навистина прекрасно да се види точно она што се случува зад сцената.
Но, тоа е смешно лесно да се изгради слики и распоредување на нив со користење на докер.
>> Тоа е преземање на малку подолго отколку што очекував.
>> Ајде да видиме што се случува кога you-- излади.
Па како што можете да видите, секоја од овие чекори претставуваат линии во Dockerfile.
И тоа покажува дека тука успешно ја изградиле оваа слика.
>> Значи, ако јас се направи држач за слики, јас ќе одам да види ги сите слики што имам на локално ниво.
А една од нив се вика мојот корисничко име и името на сликата,
и representing-- таг главно тоа е ознака верзија.
>> Па сега ако сакам да се кандидира тоа, го правам докер рок.
И јас само сакам да направам -d -P. Направи в1.
Па јас да гледате сега дека имам две контејнери трчање, онаа која јас само
создадени и здраво Докер оној што го добив последниот.
>> И можете да видите тука дека тоа таа друга порта доделени.
Значи, ако јас да одат во иста IP но ја доделите различен port-- се надевам дека не сум.
Па сега ова е апликација дека само што се распоредени.
>> Ако сакам да се прават промени, јас може брзо да ги менувате изворниот код
и да го направите следново.
Ајде да го направиме здраво Харвард.
Па сега што се случува да се случи е дека јас сум
случува да го означите со различни version-- ох,
не го означите ова guy-- со поинаква верзија.
И ви се случува да го see-- вие момци очекуваме
тоа да го заземат истиот износ на време за да го изгради по втор пат или не?
Во ред, и некој знае зошто?
Зборувај.
>> ПУБЛИКАТА: [Беззвучен]
>> Nicola KABAR: Тоа е во основа ние само да се промени една од подоцнежните чекори.
А со тоа и тоа се случува да го користите кеш и да ги користат секој од тие слоеви.
И тоа е навистина некои од убиец карактеристики на докер
е како тоа всушност се користи и повторно користи преземање
Вашиот диск за истиот Точниот парчиња информации.
>> Значи, ако ние го прават истото, тоа се само неколку секунди.
Ако сакаме да redeploy-- па сега Јас треба да има три контејнери.
Но овој е да се биде доставена the-- седум еден.
Па сега тоа е третиот сад.
Сите да разберат она што јас само не тука?
>> Па сега, ако сакате да го споделам ова сад вистински брз со вашите пријатели,
вие само може да се направи докер помогнам на името на садот, се надевам.
Па сега тоа се случува да го притисни to-- Јас не сум потпишан во тука.
Извини за тоа.
Но, јас не одам да се смена на оваа сега.
Но во основа тоа една команда е само до тоа ќе им помогнам.
И ви се случува да бидете во можност да да ја видат, ако одите на докер Hub
И кога ќе се најавите, ќе бидете ќе биде во можност да го видите.
А потоа може да се само укажуваат кој ќе
да ја користат таа слика да одат и да се повлече.
И тие можат да го користат.
>> Со тоа, се надевам Јас вид на демонстрираа
колку е лесно е да се работи со докер.
И јас сум само ќе го даде назад кон Мано.
И тој се случува да го земам од тука.
>> Мано марки: Сите во право благодарение, благодарение Нико.
Па што?
Така една од работите ми се сакав да го направите е да се стави заедно
зошто ова е important-- зошто докер и зошто
контејнери се такви важно нов развој,
нов начин на всушност прави софтвер.
>> И пред да направам, јас ќе одам да се само да се воведе неколку статистика.
Јас не одам за да ги прочитате сите овие.
Но, ова ви покажува многу за тоа како ова е популарен во заедницата.
Јадрото технологии на докер се со отворен код.
Значи тоа е докер Optimization, компонира, Рој, еден куп други работи
е за сите со отворен код.
И ние имаме, она што го направив каже, 1.300 учесници.
Што го гледате сега, ако се погледне на бројот на работни места, во последно време
ние погледна, тоа беше околу 43.000 работни места отвори посебно да се спомне
блискоста со докер.
Стотици милиони слики имаат се симнати од докер Hub.
И, и, многу повеќе големи статистика.
>> За оние кои се љубопитни, тоа првично беше напишана во Python
а потоа се препишува и повторно во Оди.
И тоа е само отвори source-- тоа е само
се пуштени за околу 2 и 1/2 години, што значи дека во 2 и 1/2 години,
ние сме виделе огромна сума на раст и значење
на овој во заедницата.
И така сакам да се зборува малку за тоа зошто.
>> Па само да укажам на некои од Клучните точки на Nico, докер е брзо.
Тоа е пренослив.
Тоа е да се репродуцира.
И го поставува стандард средина.
>> What-- и ова е мојот crappy искорени монолитност slide-- што
тоа е помагање на луѓето да се направи, што многу на софтверската индустрија
започна да прави во почетокот на 2000 година, се движи
од овие монолитни единствен апликации
каде што секој зависност мораше да биде тестирани пред целиот стан имаше
да бидат распоредени, што може да значи дека на веб-сајтот
само уште еднаш распоредени на секои три месеци, или повеќе,
кон многу сервис ориентирана архитектура
или componentized различен тип на апликација архитектура.
И така им овозможува на овие вид на архитектура
кои ги користат предностите на Докер да се кандидира во овие три
главните области на развој, што е пишување на развојот на вашето реалните код,
тестирање на вашиот код, и имплементирање.
>> Значи, зошто е ова важно?
Ако сте a-- дозволете ми да дадам еден пример.
Ако сте веб-сајт инвеститорот уред, ќе бидете
развој на веб-сајт кој е врз основа на база на податоци, дека Давид произведени овде.
Жал ми е Дејвид, јас сум ти вика.
Ако сакаше да распореди целата работа, што би
мора да почека под традиционален монолитен развој на софтвер
животната средина, ќе мора да почека додека тој беше направено со базата на податоци
пред всушност може да какви било промени на вашиот сајт.
Ќе треба да се прераспоредуваат на целата апликација да го стори тоа.
>> И што докер ви помага да направите е секоја лице да работи на различни компоненти
и надградба на нив, како тие одат, само правење сигурни дека интерфејси останат исти.
Значи она што го има направено е тоа е се префрли луѓе
од тоа овие масивни монолитен architected софтвер кој
распоредени секој месец на континуирана интеграција и континуиран развој
животната средина.
>> Сега тоа не е единствен за докер, но докер го прави толку многу полесно,
што значи дека ти си во основа постојано имплементирање.
Ние зборуваме за претпријатија кои се имплементирање на пријави со кои се соочува јавноста
илјадници пати на ден, бидејќи тие се види вредноста во само правење
мали промени, и се додека како што тече низ тестови,
дозволувајќи да се излезе во производство.
Нико беше секогаш ми кажуваше претходно дека во многу средини,
стандардниот животен циклус на сад се мери во секунди,
со оглед на виртуелната машина може да се мери во месеци.
>> Сакав да го освојам мало сврти тука, бидејќи јас сум
во образовна установа.
Сакав да дадам еден пример за тоа како се тоа функционира во образовни истражувања
ситуација.
Значи има една организација наречен bioboxes.
Bioboxes прави ДНК анализа за истражувачите.
>> Сега она што го најдов беше дека кога на researcher-- и ова не е
вина на некој посебен researcher-- но кога
истражувач распоредени алгоритам за да се анализира,
На одреден начин, ДНК примерок, ќе напише софтвер,
објавува дека, можеби, да се GitHub или некаде на друго место,
а потоа тие се направени.
>> Па проблемот беше во тоа што не беше нужно да се репродуцира.
Бидејќи со цел да разбере софтвер,
тие ќе се постави за Точниот развој на животната средина
кои што се користат истражувач, обично нивните лаптоп, или серверот, или податоци
Центар дека тие се користат.
А следствено на тоа беше многу тешко за репродукција на резултатите од истражувањата, кога
анализа на ДНК примероци да се погледне на работите како incidence--
споредба на инциденца на срцеви напади врз основа на одредени гени се присутни,
на пример, или ризикот од рак, или било кој од другите видови на нештата.
>> Значи она што го направија беше наместо тие почнаа создавање контејнери.
И можете да одат на bioboxes.org, тоа е голема организација.
И она што тие го прават е што произведуваат контејнери врз основа на истражување.
И тогаш кога некој праќа во нивниот примерок, тие можат да ја стартувате.
И ги има сите на животната средина се потребни за да се кандидира тој алгоритам
и производство на резултатите.
И тие се утврди дека тие се многу поголеми шанси и многу
побрзо се во можност да врати резултати за луѓето.
>> И всушност, она што луѓето го прават се работи на свој анализа на ДНК,
испраќање дека во да bioboxes, и тогаш biobox само ги зема податоците,
бега од сортата на различни контејнери
за да ја видите различни резултати врз основа на различни истражувања.
Па тоа е многу моќна Начинот на кој истражувачите
може да се направи еден пример кој им овозможува на други луѓе за да се обиде и да го репродуцираат
резултатите.
>> Па, како да започнете?
Ние се добро поддржани на Линукс.
Значи, ако сакате да го инсталирате ништо на Линукс,
го користите вашиот стандард менаџер на пакети за инсталација.
Ако сте со користење на Дебиан, тоа е способен добие.
CentOS е yum.
Fedora Red Hat е rpm-- јас не се сеќавам.
Како и да е, тоа е сè што постои.
Ние ја поддржуваме голема разновидност на Linux дистрибуции.
Може да се провери оние надвор.
>> Ние, исто така имаат опции да можете би можеле да работат на Mac и Windows.
Сега Нико спомнав претходно дека тоа беше поддржан само на Linux.
Тоа е точно, бидејќи тоа има потреба од Linux јадрото.
Но, можете да го извршите во виртуелната машина.
И она што на докер Лента со алатки прави, што може да го симнете,
тоа ви дава дека виртуелната машина.
>> Значи само еден брз 48 Второ, мислам, да го преземете.
Можете само да пребарувате на докер Лента со алатки, да го преземете на Mac,
и овој дел е од Курсот забрза поради кои
сака да се види на преземање сигнал?
Стандард Mac инсталација, и потоа сте
ќе видиме Џером стави во својата лозинка.
Тоа е многу возбудливо.
И потоа да ја инсталира куп на алатки.
А особено тоа ќе инсталирање на командната линија.
А потоа може да се види Џером тестирање на неговите слики.
>> А потоа врз основа на ова, можете да видите дека на YouTube
мисли дека Нико е заинтересиран Војна на ѕвездите, на Џими Кимел шоу,
и мислам дека Елен.
Мислам дека последната е Клип од Елен шоу.
>> Па докер Алатник иако доаѓа со повеќе од само докер машина.
Па докер Машинско е нешто што им помага
ви постави виртуелен машина на вашиот Windows
или Mac-- вашата кутија Windows или вашиот Mac box-- и ви помага да се направи исправка на вредност,
>> Но, тоа, исто така, доаѓа со Рој и компонира,
кои се дизајнирани да ви помогне да се направи голем обем распоредувања на вашата апликација.
Значи, ако сакате да се справат кластери на јазли,
кластери на контејнери, компонира и Рој се начин да се оди за тоа.
>> И, се разбира станува збор со Докер Мотори и Kitematic,
кој е овој десктоп GUI.
Јас треба да се спомене докер регистар, која не е вклучена во Лента со алатки,
но тоа е начин за да се кандидира на вашиот сопствен регистри на докер слики како докер
Центар, но вие исто така може да се само користење Докер Hub, како начин да го направите тоа.
>> И, заговор пресврт, што го гледате тоа трчање во сад.
А тоа е како ние сме дистрибуција на нашите слајдови.
Целата оваа презентација е всушност палубата на HTML слајд.
И тоа се извршува во контејнер, кои може да се добијат by--
>> Nicola KABAR: Да, така што е работи со полно работно време на мојот Макс.
И јас сум презентирање од него.
А вие само направете докер по инсталирање на вашиот алатник.
Вие само може да се направи докер бегство и да го добие, и употреба на слајдови.
>> Мано марки: И тоа е тоа.
Па ние сите ви благодарам што дојдовте.
И ние сме среќни да се одговори на прашања.
Јас треба да се спомене пред некој остава постои маици таму.
Жал ми е некој кој е гледање ова на livestream или видео,
но имаме докер маици таму.
И знаеме докер студенти, и во моето искуство,
професори, исто така, како бесплатен облека.
>> Значи се што ви се заблагодарам што излегува.
И да се следи со нас на Твитер ако сакате, или не.
Не ми е гајле.
Докер исто така го следат на Твитер.
Тоа е исто така интересна.
И тогаш тоа е тоа.
Docker.com.
Ти благодарам.
>> [Аплауз]