1 00:00:00,000 --> 00:00:05,042 >> [REPRODUCCIÓ DE MÚSICA] 2 00:00:05,042 --> 00:00:06,000 DAVID Malan: D'acord. 3 00:00:06,000 --> 00:00:07,630 Moltes gràcies per haver vingut. 4 00:00:07,630 --> 00:00:11,850 Aquesta és CS50 seminari sobre Docker, 1 tecnologia que nosaltres mateixos i CS50 Nosaltres 5 00:00:11,850 --> 00:00:13,392 han començat a utilitzar des de fa algun temps. 6 00:00:13,392 --> 00:00:15,766 Així que el meu nom és David Malan, I ensenyar Introducció de Harvard 7 00:00:15,766 --> 00:00:16,671 de Ciències de la Computació. 8 00:00:16,671 --> 00:00:18,670 Des de fa algun any, hem estat donant als estudiants 9 00:00:18,670 --> 00:00:20,435 del costat del client descarregable màquines virtuals 10 00:00:20,435 --> 00:00:22,134 en la qual ho fan els seus problemes conjunts. 11 00:00:22,134 --> 00:00:24,300 Que ara hem fet la transició a un entorn de núvol 12 00:00:24,300 --> 00:00:27,396 que realment utilitza aquesta tecnologia anomenat acoblable, de manera que tot el CS50 13 00:00:27,396 --> 00:00:29,270 els estudiants ara tenen el seu contenidors propis Docker 14 00:00:29,270 --> 00:00:31,180 que aviat se sent tot. 15 00:00:31,180 --> 00:00:33,740 >> D'altra banda, en el servidor del CS50 clúster banda, durant molts anys 16 00:00:33,740 --> 00:00:35,290 estàvem usant el servidor del núvol d'Amazon. 17 00:00:35,290 --> 00:00:37,164 Estàvem corrent individu màquines virtuals. 18 00:00:37,164 --> 00:00:40,330 Això també, hem començat a fer la transició a aquestes coses anomenades contenidors Docker 19 00:00:40,330 --> 00:00:43,762 de manera que totes les nostres aplicacions són ara perfectament aïllats uns dels altres. 20 00:00:43,762 --> 00:00:46,720 Així que per això i més, em permetrà introduir els nostres amics, Nico i Mà, 21 00:00:46,720 --> 00:00:48,574 de si mateix Docker. 22 00:00:48,574 --> 00:00:49,740 NICOLA Kabar: Gràcies, David. 23 00:00:49,740 --> 00:00:51,410 Hola a tothom. 24 00:00:51,410 --> 00:00:54,230 El meu nom és Nico i això és Mà. 25 00:00:54,230 --> 00:00:58,260 Som de Docker. 26 00:00:58,260 --> 00:01:02,240 Estarem parlant sobre-- donant-li nois una introducció a Docker, 27 00:01:02,240 --> 00:01:08,100 i espero que, cap al final d'aquesta xerrada vostè pot adonar- 28 00:01:08,100 --> 00:01:12,890 quant pot utilitzar metge oxalat seu desenvolupament d'aplicacions 29 00:01:12,890 --> 00:01:14,200 i desplegament. 30 00:01:14,200 --> 00:01:21,250 >> Per tant, anem a començar de veritat ràpida amb una mica d'informació de fons. 31 00:01:21,250 --> 00:01:22,750 Descrigui el Docker es tracta. 32 00:01:22,750 --> 00:01:25,490 Com funciona? 33 00:01:25,490 --> 00:01:27,400 Com és amb arquitectura? 34 00:01:27,400 --> 00:01:29,360 Vaig a estar fent algunes demostracions. 35 00:01:29,360 --> 00:01:35,070 I Mà serà que descriu com es pot utilitzar Docker 36 00:01:35,070 --> 00:01:37,720 i que li dóna passos específics com es pot començar. 37 00:01:37,720 --> 00:01:41,490 >> Li agrairia si vostès poden sostenir fora de les seves preguntes cap al final. 38 00:01:41,490 --> 00:01:46,800 D'aquesta manera, jo podria estar abordant els preguntes durant la presentació. 39 00:01:46,800 --> 00:01:52,150 Així que anem a deixar una mica de temps cap al final de les preguntes. 40 00:01:52,150 --> 00:01:55,170 >> Així que molt ràpid, que té En realitat mai treballat en Docker, 41 00:01:55,170 --> 00:01:56,850 com jugar amb ell? 42 00:01:56,850 --> 00:01:58,000 Impressionant. 43 00:01:58,000 --> 00:01:58,520 Fresc. 44 00:01:58,520 --> 00:01:59,817 Gran. 45 00:01:59,817 --> 00:02:01,525 Per tant, vaig a començar amb una mica d'història. 46 00:02:01,525 --> 00:02:04,350 47 00:02:04,350 --> 00:02:09,820 Així que allà pels anys 90 i principis de 2000, bàsicament 48 00:02:09,820 --> 00:02:16,940 com a desenvolupadors web, desenvolupadors d'aplicacions, quan anaven a desplegar una aplicació 49 00:02:16,940 --> 00:02:19,350 que estava lligat al metall nu. 50 00:02:19,350 --> 00:02:20,860 Era un servidor. 51 00:02:20,860 --> 00:02:22,870 Era una sola aplicació. 52 00:02:22,870 --> 00:02:25,260 >> Tradicionalment, un exemple seria com una pila LAMP, 53 00:02:25,260 --> 00:02:30,630 on realment calia obrir el conjunt de recursos. 54 00:02:30,630 --> 00:02:37,110 CPU, memòria, disc, xarxa, instal·lació sistema operatiu per sobre d'això. 55 00:02:37,110 --> 00:02:40,060 Si vostè està servint alguna cosa, si en realitat estàs tenint servidor web, 56 00:02:40,060 --> 00:02:42,470 necessita alguna cosa així com Apache per servir. 57 00:02:42,470 --> 00:02:47,540 >> Si la seva aplicació necessitats de base de dades, de revés, 58 00:02:47,540 --> 00:02:50,840 vostè instal·lar alguna cosa com MySQL, i així successivament. 59 00:02:50,840 --> 00:02:55,910 I si vostè necessita el temps d'execució, PHPS i el treball PHP Python hi eren. 60 00:02:55,910 --> 00:02:59,480 I així, de fet, vam haver prendre aquests passos en ordre 61 00:02:59,480 --> 00:03:02,060 per obtenir la seva aplicació en funcionament. 62 00:03:02,060 --> 00:03:08,440 >> Si vostè necessita més poder de còmput que, bàsicament vam haver de trucar al teu noi Operacions 63 00:03:08,440 --> 00:03:16,260 o noia per anar a acumular una nova peça de maquinari, la connexió, 64 00:03:16,260 --> 00:03:19,850 i vostè ha de repetir els processos i una altra. 65 00:03:19,850 --> 00:03:23,680 Així que aquest procés va ser relativament car. 66 00:03:23,680 --> 00:03:26,080 Va ser sens dubte molt lent. 67 00:03:26,080 --> 00:03:27,550 >> Era ineficient. 68 00:03:27,550 --> 00:03:33,890 I en molts casos, la seva maquinari va ser subutilitzat. 69 00:03:33,890 --> 00:03:38,830 Així, en els anys 90 a finals dels anys 2000 i principis, virtualització de maquinari es va trobar. 70 00:03:38,830 --> 00:03:42,475 I com es pot veure aquí, al imatge, bàsicament el que van fer 71 00:03:42,475 --> 00:03:46,390 s'abstreu de la piscina d' recursos de maquinari gratuïtes 72 00:03:46,390 --> 00:03:49,680 i el tipus dels que se serveix a les capes superiors, 73 00:03:49,680 --> 00:03:52,360 en aquest cas, un client de sistema operatiu. 74 00:03:52,360 --> 00:03:54,940 >> I la idea de màquines virtuals van topar 75 00:03:54,940 --> 00:03:59,110 i que realment va ajudar al núvol la computació tal com la coneixem avui dia. 76 00:03:59,110 --> 00:04:02,730 Així que el que volia dir que és pot executar diverses màquines virtuals, que 77 00:04:02,730 --> 00:04:06,720 significava diverses piles, múltiple aplicació en un mateix equip físic. 78 00:04:06,720 --> 00:04:10,570 79 00:04:10,570 --> 00:04:16,440 >> Això sens dubte va ajudar amb el velocitat de desplegament de l'aplicació. 80 00:04:16,440 --> 00:04:17,629 Definitivament amb les despeses. 81 00:04:17,629 --> 00:04:22,810 Vostè no ha d'anar a passar energia, temps i recursos per a prestatge 82 00:04:22,810 --> 00:04:26,210 més servidors per arribar a més de còmput. 83 00:04:26,210 --> 00:04:30,950 I la velocitat de la realitat portar els recursos dalt és molt més ràpid. 84 00:04:30,950 --> 00:04:31,450 Gran. 85 00:04:31,450 --> 00:04:34,320 >> Així solucionem fam al món, ¿no? 86 00:04:34,320 --> 00:04:36,390 No, no realment. 87 00:04:36,390 --> 00:04:42,410 Així, la virtualització tant com sigui en realitat va ajudar, abordar el problema, 88 00:04:42,410 --> 00:04:45,460 el que realment va introduir una gran quantitat de desafiaments. 89 00:04:45,460 --> 00:04:49,210 El hipervisor definitivament introduït una gran complexitat, 90 00:04:49,210 --> 00:04:53,820 el maneig de les subjacents conjunt de recursos. 91 00:04:53,820 --> 00:04:57,910 >> És més pesat en el sentit que abans de que tenia un únic sistema operatiu que 92 00:04:57,910 --> 00:05:01,830 és com tres, quatre concerts al disc. 93 00:05:01,830 --> 00:05:04,230 Ara, si vostè té 10 màquines en un sol maquinari 94 00:05:04,230 --> 00:05:09,060 vostè ha de multiplicar aquesta pel nombre de màquines. 95 00:05:09,060 --> 00:05:11,440 És definitivament més car en un sentit encara 96 00:05:11,440 --> 00:05:14,430 d'obtenir llicències per la tecnologia de virtualització 97 00:05:14,430 --> 00:05:18,210 si no és de codi obert. 98 00:05:18,210 --> 00:05:21,120 >> Però, no anem a prendre totes les crèdit de la virtualització. 99 00:05:21,120 --> 00:05:27,530 Perquè el que passa és que hi ha una gran quantitat de piles i un munt de programari 100 00:05:27,530 --> 00:05:33,900 tecnologies que es van habilitar per la rapidesa amb què van ser capaços d'obtenir 101 00:05:33,900 --> 00:05:38,040 als recursos amb l'auge del núvol. 102 00:05:38,040 --> 00:05:46,675 >> Així, avui dia una sola aplicació o servei pot estar utilitzant qualsevol dels següents temps d'execució 103 00:05:46,675 --> 00:05:47,216 o bases de dades. 104 00:05:47,216 --> 00:05:50,250 105 00:05:50,250 --> 00:05:56,070 PHP, Python, MySQL, Redis, què sé jo. 106 00:05:56,070 --> 00:05:59,740 Així que hi ha una gran quantitat de complexitat en aquest nombre de piles per portar realitat fins 107 00:05:59,740 --> 00:06:02,210 un únic servei. 108 00:06:02,210 --> 00:06:07,300 I juntament amb això, que tenia una gran quantitat de recursos o infraestructura subjacents 109 00:06:07,300 --> 00:06:15,210 tipus de prova de desplegament i, bàsicament, prendre per a la producció d'aquestes aplicacions 110 00:06:15,210 --> 00:06:16,900 que està en desenvolupament. 111 00:06:16,900 --> 00:06:21,950 >> Sobretot perquè els seus equips tenen crescut treballant en aquestes aplicacions, 112 00:06:21,950 --> 00:06:25,310 hi ha una gran quantitat de complexitat i desafiaments 113 00:06:25,310 --> 00:06:31,660 que van ser portats a garantir que el cycle-- bàsicament aplicació 114 00:06:31,660 --> 00:06:34,040 cicle de desenvolupament, és en realitat èxit. 115 00:06:34,040 --> 00:06:40,440 Així, el fet que la seva aplicació està treballant localment al seu local de VM 116 00:06:40,440 --> 00:06:47,480 no garanteix que el seu col·lega esperarà els mateixos resultats. 117 00:06:47,480 --> 00:06:51,330 >> I quan l'equip d'operacions és involucrats en prendre el que tens 118 00:06:51,330 --> 00:06:54,480 i el seu desplegament a la producció escala, també no es garanteix 119 00:06:54,480 --> 00:06:56,730 que això és realment va a succeir. 120 00:06:56,730 --> 00:07:00,900 Així que això ens deixa amb una realitat big-- un munt de signes d'interrogació, 121 00:07:00,900 --> 00:07:07,700 una gran quantitat de reptes en realitat enfrontat de manera similar en els dies. 122 00:07:07,700 --> 00:07:12,280 I això ens va recordar la indústria naviliera. 123 00:07:12,280 --> 00:07:14,280 >> Així que la indústria del transport marítim tenia una gran quantitat de béns, 124 00:07:14,280 --> 00:07:16,190 com es pot veure a la banda esquerra. 125 00:07:16,190 --> 00:07:19,840 I en el costat dret, hi ha un munt de, bàsicament, 126 00:07:19,840 --> 00:07:22,160 maneres d'enviar aquestes mercaderies. 127 00:07:22,160 --> 00:07:26,040 ¿I què passa amb la família persones es van reunir i van dir: 128 00:07:26,040 --> 00:07:29,600 hem de estandarditzar la forma en realitat ens enviem aquests béns. 129 00:07:29,600 --> 00:07:33,280 I bum, vostè té l' intermodal de contenidors d'enviament. 130 00:07:33,280 --> 00:07:38,970 >> Així que es van posar d'acord sobre el més mides comunes per al contenidor. 131 00:07:38,970 --> 00:07:40,160 Com manejar-los. 132 00:07:40,160 --> 00:07:44,560 Quin mètode exacte que necessita per carregar i descarregar-los. 133 00:07:44,560 --> 00:07:49,590 I per tant, que realment ajudat a la indústria del transport marítim. 134 00:07:49,590 --> 00:07:55,250 Ara més del 90% d'enfocament transportat a nivell mundial estan utilitzant aquests contenidors. 135 00:07:55,250 --> 00:08:01,010 I això sens dubte disminueix les despeses, així com 136 00:08:01,010 --> 00:08:03,400 els danys causats per la tramesa. 137 00:08:03,400 --> 00:08:09,660 >> Així que vam prendre el mateix model i nosaltres aplicar el programari de desenvolupament de dues aplicacions 138 00:08:09,660 --> 00:08:13,080 arquitectura, en el sentit de que la contenerització 139 00:08:13,080 --> 00:08:15,842 va prendre la virtualització d'un nivell. 140 00:08:15,842 --> 00:08:17,800 Així que en comptes de fer això a nivell de maquinari, 141 00:08:17,800 --> 00:08:22,060 es va fer més d'un operatiu virtualització a nivell de sistema. 142 00:08:22,060 --> 00:08:26,450 >> I ho fem proporcionant a cada aplicació en el seu propi lleuger, 143 00:08:26,450 --> 00:08:31,180 aïllat, executable, i portable, el més important, 144 00:08:31,180 --> 00:08:35,049 una manera d'empaquetar en realitat tot el que necessita per funcionar. 145 00:08:35,049 --> 00:08:36,100 En qualsevol lloc es pot executar. 146 00:08:36,100 --> 00:08:42,039 Així que, independentment de si s'està executant en entorn de desenvolupament local, la seva producció 147 00:08:42,039 --> 00:08:44,490 medi ambient, la seva posada en escena o la prova. 148 00:08:44,490 --> 00:08:47,700 No importa el que subjau infraestructura hi és, 149 00:08:47,700 --> 00:08:51,410 has tingut una aplicació de treball funcional. 150 00:08:51,410 --> 00:08:54,100 151 00:08:54,100 --> 00:09:01,800 >> Així que això és exactament el que, bàsicament, contenidors fan a aquest problema. 152 00:09:01,800 --> 00:09:04,070 Aborden per envasat de tal manera 153 00:09:04,070 --> 00:09:09,490 que pot garantir que es desplega èxit sense importar on viu. 154 00:09:09,490 --> 00:09:12,120 Així que si vostè va com, Bob segueix sent acord. 155 00:09:12,120 --> 00:09:17,860 Si vostè està confós amb el que estic dient, Vaig a ser elaborar en això. 156 00:09:17,860 --> 00:09:20,900 >> Llavors, com ho fa en si Docker cabre en aquesta foto? 157 00:09:20,900 --> 00:09:26,335 Així Docker és una plataforma oberta fàcilment, destacar amb facilitat, 158 00:09:26,335 --> 00:09:30,500 per construir la nau, córrer, acte lleuger portàtil 159 00:09:30,500 --> 00:09:33,440 contenidors d'aplicacions suficients en qualsevol lloc. 160 00:09:33,440 --> 00:09:37,660 Així que si vostè pren una mica d'això parlar, si us plau prengui la següent. 161 00:09:37,660 --> 00:09:40,980 >> Si vostè té la seva aplicació en execució a nivell local i que el va desenvolupar 162 00:09:40,980 --> 00:09:45,930 en l'ús de la plataforma Docker, l'espera que pugui ser desplegat amb èxit. 163 00:09:45,930 --> 00:09:49,380 No importa quina és la infraestructura subjacent. 164 00:09:49,380 --> 00:09:53,830 Així que si vostè té un Docker contenidor i que està funcionant, llavors 165 00:09:53,830 --> 00:09:58,130 sempre que hi ha un Docker motor en l'altre side-- 166 00:09:58,130 --> 00:10:02,190 si la seva infraestructura d'operació està usant qualsevol núvol, ja sigui 167 00:10:02,190 --> 00:10:06,680 és AWS, o la de Google o Microsoft, o qualsevol dels núvols públiques, 168 00:10:06,680 --> 00:10:10,010 o la seva pròpia núvol, o la seva pila oberta Núvol, o en el seu entorn local. 169 00:10:10,010 --> 00:10:11,970 >> Si vostè té un motor córrer, que els mitjans 170 00:10:11,970 --> 00:10:14,537 que serà èxit desplegat allà. 171 00:10:14,537 --> 00:10:16,620 Va a estar en execució exactament el mateix comportament 172 00:10:16,620 --> 00:10:21,480 com amb arquitectura que sigui. 173 00:10:21,480 --> 00:10:26,080 Així que si ens fixem at-- estic anant de passar pel que en realitat 174 00:10:26,080 --> 00:10:29,160 estan en els principals components de acoblable. 175 00:10:29,160 --> 00:10:31,060 >> Així motor està al centre de Docker. 176 00:10:31,060 --> 00:10:32,770 És el cervell de. 177 00:10:32,770 --> 00:10:39,360 S'organitza la construcció, el transport, i la implementació i administració 178 00:10:39,360 --> 00:10:41,570 els propis contenidors. 179 00:10:41,570 --> 00:10:45,160 Vaig a cavar en el que fa de motor en més detalls en un segon. 180 00:10:45,160 --> 00:10:47,740 181 00:10:47,740 --> 00:10:51,720 Bàsicament, perquè el doctor es va construir al voltant de les arquitectures client-servidor, 182 00:10:51,720 --> 00:10:56,630 per la qual cosa tal d'interactuar amb el Motor que necessita algun tipus de client. 183 00:10:56,630 --> 00:11:01,200 >> Les imatges són les plantilles en que els contenidors estan construïts a partir de. 184 00:11:01,200 --> 00:11:06,800 Així que les imatges són bàsicament arxius simplement estàtics. 185 00:11:06,800 --> 00:11:08,740 Plantilles i contenidors En realitat, és el que hi ha 186 00:11:08,740 --> 00:11:12,280 s'està executant en temps d'execució que està complint la seva aplicació 187 00:11:12,280 --> 00:11:15,150 o fer alguna cosa amb les dades. 188 00:11:15,150 --> 00:11:19,020 >> Registre s'aborda com un problema de com distribuïu imatges. 189 00:11:19,020 --> 00:11:23,230 Així que si vostè necessita compartir una imatge el que ha treballat al seu col·lega 190 00:11:23,230 --> 00:11:27,220 o l'equip d'operacions, que usar-lo usant Registre. 191 00:11:27,220 --> 00:11:31,720 Podeu descarregar una font oberta versió de la mateixa que Docker va treballar en 192 00:11:31,720 --> 00:11:33,150 i obrir origen. 193 00:11:33,150 --> 00:11:38,040 >> O pot utilitzar Docker ajuda, que és la versió del núvol 194 00:11:38,040 --> 00:11:40,130 empènyer i estirar les imatges que hi ha. 195 00:11:40,130 --> 00:11:41,160 Això és una cosa enorme. 196 00:11:41,160 --> 00:11:44,520 Perquè hi ha una enorme ecosistema al voltant de Docker i és 197 00:11:44,520 --> 00:11:48,960 realment en gran mesura utilitzant el concentrador. 198 00:11:48,960 --> 00:11:59,780 >> Així que per resumir aquí, així és com el minimalista client flux de treball del estibador. 199 00:11:59,780 --> 00:12:04,040 Pot interactuar amb l'amfitrió, en aquest cas es tracta dels dimonis Docker. 200 00:12:04,040 --> 00:12:06,490 És el mateix que la del motor. 201 00:12:06,490 --> 00:12:09,690 Fas ordres com Docker construir, tirar, córrer. 202 00:12:09,690 --> 00:12:14,280 I el mateix motor va i fa aquestes coses. 203 00:12:14,280 --> 00:12:18,010 >> Així que, o interactua amb Registre per tirar d'aquestes imatges 204 00:12:18,010 --> 00:12:19,670 i les capes de les imatges. 205 00:12:19,670 --> 00:12:25,030 Ja sigui si vol implementar, executar contenidors, els maten, llençar-los a baix, 206 00:12:25,030 --> 00:12:25,730 què sé jo. 207 00:12:25,730 --> 00:12:32,190 Així que això resumeix el flux de treball de tots aquests components. 208 00:12:32,190 --> 00:12:34,710 >> Així que si vostè pren tots els component per si mateix. 209 00:12:34,710 --> 00:12:37,690 Així motor, és només un dimoni. 210 00:12:37,690 --> 00:12:40,800 Va a classe de jugar per donar suport en Linux perquè ho fa 211 00:12:40,800 --> 00:12:44,380 requerir certes característiques del nucli de Linux. 212 00:12:44,380 --> 00:12:48,820 Però Windows està treballant en fer el mateix. 213 00:12:48,820 --> 00:12:53,720 Se suposa que ser recolzat Windows Server 2016. 214 00:12:53,720 --> 00:13:01,500 >> Així, de nou, les responsabilitats amb la motor és, o són per, construir imatges. 215 00:13:01,500 --> 00:13:05,340 Estireu les imatges de la Docker Hub o en el seu propi registre. 216 00:13:05,340 --> 00:13:07,840 Si li fan amb aquestes imatges o crear una nova imatge, 217 00:13:07,840 --> 00:13:14,770 vostè pot empènyer els de tornada al registre distribuir-los a altres equips. 218 00:13:14,770 --> 00:13:18,300 >> I tractant de contenir-localment i gestionar el cicle de vida dels envasos 219 00:13:18,300 --> 00:13:19,260 localment. 220 00:13:19,260 --> 00:13:22,010 Està construït al voltant de l'API HTTP REST. 221 00:13:22,010 --> 00:13:24,480 Així que tècnicament sigui possible escriure el seu propi client 222 00:13:24,480 --> 00:13:31,650 sempre i quan s'utilitza HTTP, que és un molt mecanisme estàndard per parlar amb motor 223 00:13:31,650 --> 00:13:33,110 i un munt d'altres serveis. 224 00:13:33,110 --> 00:13:35,780 I es pot veure en aquí que, independentment 225 00:13:35,780 --> 00:13:39,010 del que la infraestructura és a dir, sempre que vostè can-- tot 226 00:13:39,010 --> 00:13:42,170 el que necessita és un operatiu sistema, Linux específicament. 227 00:13:42,170 --> 00:13:45,460 >> I vostè pot instal·lar Docker Motor sobre d'això i tenir-lo funcionant 228 00:13:45,460 --> 00:13:48,970 i orquestra, en el fons, tots aquests aplicació un, dos, 229 00:13:48,970 --> 00:13:51,530 i 3 són contenidors reals. 230 00:13:51,530 --> 00:13:53,990 Així que això és cerca. 231 00:13:53,990 --> 00:13:58,040 Com he esmentat abans, perquè que necessita per interactuar amb el motor, 232 00:13:58,040 --> 00:13:59,200 hi ha el client. 233 00:13:59,200 --> 00:14:03,180 >> Però en realitat quan s'instal·la Docker, es distribueix amb ell. 234 00:14:03,180 --> 00:14:06,110 Pel que s'instal·la, pel que és un sol binari. 235 00:14:06,110 --> 00:14:11,830 I vostè pot fer trucades locals al seu motor de Docker. 236 00:14:11,830 --> 00:14:14,040 O trucades remotes a Motors remotes. 237 00:14:14,040 --> 00:14:16,600 238 00:14:16,600 --> 00:14:19,590 No utilitzeu HTTP, com He esmentat abans. 239 00:14:19,590 --> 00:14:24,200 Hi ha un client GUI anomenada Kitematic de Docker. 240 00:14:24,200 --> 00:14:26,390 I hi ha dubte un munt d'altres persones 241 00:14:26,390 --> 00:14:29,740 que estan construint una gran quantitat de GUIs que bàsicament implementen 242 00:14:29,740 --> 00:14:32,980 alguns HTTP crida per parlar amb motor. 243 00:14:32,980 --> 00:14:35,920 244 00:14:35,920 --> 00:14:39,280 >> Només alguns comandaments d'exemple. 245 00:14:39,280 --> 00:14:44,620 Si ho fa la versió Docker, ho faria li mostrarà la versió del client, així com 246 00:14:44,620 --> 00:14:47,030 la versió del servidor. 247 00:14:47,030 --> 00:14:49,500 Si ho fas informació Docker ho farà dir-li tota la informació 248 00:14:49,500 --> 00:14:54,300 sobre quants contenidors s'estan executant o creats, la quantitat d'imatges que té, 249 00:14:54,300 --> 00:14:56,530 i així successivament i així successivament. 250 00:14:56,530 --> 00:15:01,850 >> Aquí tinc, al costat de última caixa, tinc doctor termini. 251 00:15:01,850 --> 00:15:04,970 Així que això és el que sóc en realitat la creació de contenidor. 252 00:15:04,970 --> 00:15:08,960 I li dono a fer-se ressò Hello World i dormir per un segon i tot això. 253 00:15:08,960 --> 00:15:12,830 I vostè pot veure el resultat. Així que és permanent. 254 00:15:12,830 --> 00:15:16,930 I igual que Linux ps, es pot veure tots els processos i, en aquest cas, 255 00:15:16,930 --> 00:15:18,540 tots els contenidors de funcionament. 256 00:15:18,540 --> 00:15:23,430 Tornar referint d'aquest un el contenidor que acaba de crear. 257 00:15:23,430 --> 00:15:27,560 >> Per tant, això és molt important perquè, com, pot ser una mica confús. 258 00:15:27,560 --> 00:15:33,050 Així que les imatges són de només lectura del col·lecció d'arxius, oi? 259 00:15:33,050 --> 00:15:37,000 Són el que el nostre contenidor es basa en. 260 00:15:37,000 --> 00:15:40,340 Però ells només estan de només lectura. 261 00:15:40,340 --> 00:15:44,330 Així que comences una imatge base amb. 262 00:15:44,330 --> 00:15:50,180 Es tendeix a imitar-OS com, per la qual Ubuntu, CentOS, imatge base que sigui. 263 00:15:50,180 --> 00:15:53,990 I a continuació, s'inicia la construcció a la part superior de la que, certes capes, que conformaran 264 00:15:53,990 --> 00:16:00,010 seva imatge final, el resultat final aquí. 265 00:16:00,010 --> 00:16:03,220 >> I cadascuna d'aquestes capes ha de tenir una imatge de matriu 266 00:16:03,220 --> 00:16:06,690 que fa referència quan es realment vol crear. 267 00:16:06,690 --> 00:16:09,922 Ells són immutables, en el sentit que de només lectura perquè estan, 268 00:16:09,922 --> 00:16:11,630 vostè no pot realment realitzar canvis en ells. 269 00:16:11,630 --> 00:16:17,540 Vostè les pot utilitzar per crear un contenidor d'una imatge, que 270 00:16:17,540 --> 00:16:23,530 cridarà a tots la subsegüent imatges necessàries per sota d'ella. 271 00:16:23,530 --> 00:16:26,400 >> Pot realitzar canvis a una capa diferent, 272 00:16:26,400 --> 00:16:28,810 que és una capa de reescriptura vaig parlar en un segon. 273 00:16:28,810 --> 00:16:31,350 Però cadascuna d'aquestes capes Mai es canvien. 274 00:16:31,350 --> 00:16:34,300 275 00:16:34,300 --> 00:16:38,670 Bàsicament imatges fan servir alguna cosa diu Unió Sistema, UFS arxiu. 276 00:16:38,670 --> 00:16:42,280 I no són diferents d'emmagatzematge backends que utilitzen aquesta tecnologia. 277 00:16:42,280 --> 00:16:49,430 I el que això significa és que reuneix els sistemes d'arxius diferents 278 00:16:49,430 --> 00:16:51,190 perquè es vegin com un. 279 00:16:51,190 --> 00:16:54,460 >> Així que en realitat es pot, a partir de d'una perspectiva de l'aplicació, 280 00:16:54,460 --> 00:16:59,570 vostè té una part superior d'una vista que mostra tots els diferents sistema d'arxius necessari 281 00:16:59,570 --> 00:17:01,120 perquè l'aplicació s'executi. 282 00:17:01,120 --> 00:17:04,400 Però en realitat són, en això, en realitat són en llocs separats 283 00:17:04,400 --> 00:17:06,410 i sent utilitzat per altres recipients, així. 284 00:17:06,410 --> 00:17:09,569 285 00:17:09,569 --> 00:17:14,410 >> Així com es pot veure aquí que si comencem imatge daemon amb 286 00:17:14,410 --> 00:17:18,619 com una imatge de base, i després entrem i afegim [? emacs?] 287 00:17:18,619 --> 00:17:20,720 i llavors això és una altra capa. 288 00:17:20,720 --> 00:17:21,916 I a continuació, afegir Apache. 289 00:17:21,916 --> 00:17:22,790 Aquesta és una altra capa. 290 00:17:22,790 --> 00:17:25,470 I després passem la contenidor d'això. 291 00:17:25,470 --> 00:17:29,760 Cadascuna d'aquestes imatges, cadascuna d'aquestes capes, 292 00:17:29,760 --> 00:17:35,530 és diferent i pot ser reutilitzats per altres contenidors. 293 00:17:35,530 --> 00:17:40,070 >> Si ens fixem en els propis contenidors, que són d'alguna manera com VM-com, 294 00:17:40,070 --> 00:17:41,930 però no es tracta al mateix temps. 295 00:17:41,930 --> 00:17:49,180 Per tant, no tenen, tècnicament, la sistema operatiu complet sota d'ells. 296 00:17:49,180 --> 00:17:52,630 Utilitzen l'únic nucli del sistema operatiu host. 297 00:17:52,630 --> 00:17:54,440 I ells es basen en la part superior. 298 00:17:54,440 --> 00:17:56,250 Ells imiten en la seva aparença. 299 00:17:56,250 --> 00:18:00,710 Ells imiten els seus fitxers arrel sistema del sistema operatiu. 300 00:18:00,710 --> 00:18:04,930 Però en realitat no es repliquen. 301 00:18:04,930 --> 00:18:12,080 >> Així, en lloc de tenir capes immutables, l'última capa, que és el contenidor 302 00:18:12,080 --> 00:18:14,690 sí, és una capa de lectura i escriptura. 303 00:18:14,690 --> 00:18:17,350 Això també s'executa els processos de la seva sol·licitud. 304 00:18:17,350 --> 00:18:23,530 I depèn de les capes subjacents. 305 00:18:23,530 --> 00:18:26,730 Cada contenidor és creat a partir d'una imatge. 306 00:18:26,730 --> 00:18:32,450 I aquesta imatge pot ser un sol capa o imatge de múltiples capes. 307 00:18:32,450 --> 00:18:37,200 >> I vull assenyalar aquí Docker que s'utilitza en gran mesura, 308 00:18:37,200 --> 00:18:40,370 o es basa en el mecanisme de Copy-on-Write. 309 00:18:40,370 --> 00:18:44,350 Així que, en realitat, si no està realitzar canvis en el recipient, 310 00:18:44,350 --> 00:18:45,930 que no va a tenir espai extra. 311 00:18:45,930 --> 00:18:49,600 Així que això és bàsicament com resumir 1 Copy-on-Write. 312 00:18:49,600 --> 00:18:53,820 Es va a accelerar definitivament fins el temps d'arrencada per al contenidor. 313 00:18:53,820 --> 00:18:56,300 Perquè si vostè no està fent canvis en el recipient, 314 00:18:56,300 --> 00:18:57,800 està utilitzant el que ja està allà. 315 00:18:57,800 --> 00:19:01,130 316 00:19:01,130 --> 00:19:02,955 >> Llavors, com funciona realment. 317 00:19:02,955 --> 00:19:06,920 318 00:19:06,920 --> 00:19:14,240 Part d'ella és com, en aquest moment, utilitza almenys dues nucli clau 319 00:19:14,240 --> 00:19:14,820 Característiques. 320 00:19:14,820 --> 00:19:17,660 I això és bàsicament el que creat aquest nivell d'aïllament 321 00:19:17,660 --> 00:19:19,550 per als mateixos contenidors. 322 00:19:19,550 --> 00:19:22,290 Aquestes característiques són espais de noms i cgroups. 323 00:19:22,290 --> 00:19:29,870 Així que els espais de noms són una manera de crear recursos aïllats, 324 00:19:29,870 --> 00:19:36,290 de manera que dins del propi recipient, Només es pot veure certs recursos. 325 00:19:36,290 --> 00:19:40,030 Com ara la interfície de xarxa o els determinats usuaris o el que sigui. 326 00:19:40,030 --> 00:19:44,160 >> I aquests són accessibles únicament i només accessible dins del recipient. 327 00:19:44,160 --> 00:19:48,290 Cgroup en els altres límits laterals com utilitzar aquests recursos. 328 00:19:48,290 --> 00:19:50,950 CPU, la memòria, i el disc. 329 00:19:50,950 --> 00:19:53,900 Quan vostè pot entrar, em significa aquests són en realitat 330 00:19:53,900 --> 00:19:57,410 característiques que es van desenvolupar por-- que són part del nucli de Linux. 331 00:19:57,410 --> 00:20:01,800 Així que no es reinventen ni està recreat per Docker. 332 00:20:01,800 --> 00:20:03,770 Docker els utilitza. 333 00:20:03,770 --> 00:20:05,560 >> El que realment tenia Mèdic aquí és en realitat 334 00:20:05,560 --> 00:20:08,680 creació orquestrada espais de noms per a cada contenidor 335 00:20:08,680 --> 00:20:13,320 i la creació dels cgroups perquè sigui ridículament fàcil crear contenidors 336 00:20:13,320 --> 00:20:14,870 utilitzant aquestes característiques. 337 00:20:14,870 --> 00:20:22,910 Per descomptat, com he descrit anteriorment, la Unió File Systems i copy-on-write veritat 338 00:20:22,910 --> 00:20:26,810 ajudar a la velocitat i el disc utilització dels contenidors. 339 00:20:26,810 --> 00:20:28,917 >> I una vegada que obtingui la seva mans al voltant de Docker, 340 00:20:28,917 --> 00:20:32,000 vas a veure la rapidesa amb què és de fet girar contenidors i llàgrima 341 00:20:32,000 --> 00:20:32,500 cap avall. 342 00:20:32,500 --> 00:20:36,060 343 00:20:36,060 --> 00:20:40,230 Així doncs, si vostè pot preguntar, com pot en realitat es construeix imatges? 344 00:20:40,230 --> 00:20:45,940 Construïm imatges per un procés de creació contenidors i fer canvis, alterar 345 00:20:45,940 --> 00:20:50,220 ells, i els lliurava per convertir-se en una imatge. 346 00:20:50,220 --> 00:20:54,330 >> Així que és un pollastre i referència ou aquí, 347 00:20:54,330 --> 00:20:57,350 perquè tots els recipients vénen a partir d'imatges i imatges vénen 348 00:20:57,350 --> 00:21:00,270 comeses dels contenidors, per la major part. 349 00:21:00,270 --> 00:21:03,830 Hi ha tres opcions per crear imatges. 350 00:21:03,830 --> 00:21:06,580 Vaig a descriure el primer i l'últim. 351 00:21:06,580 --> 00:21:10,060 Vostè pot manualment anar i executar el contenidor 352 00:21:10,060 --> 00:21:14,280 i fer aquests canvis, igual que ho faria en qualsevol VM 353 00:21:14,280 --> 00:21:17,060 o qualsevol sistema operatiu, com com la instal·lació de nous binaris, 354 00:21:17,060 --> 00:21:19,370 afegir sistemes d'arxius, i altres coses. 355 00:21:19,370 --> 00:21:22,620 >> I després es surt, com es pot veure allà. 356 00:21:22,620 --> 00:21:24,330 Estic de sortir del meu contenidor. 357 00:21:24,330 --> 00:21:26,050 I llavors jo estic fent Docker cometre. 358 00:21:26,050 --> 00:21:28,390 I estic cometent això. 359 00:21:28,390 --> 00:21:31,560 Vostè pot veure que el nombre aquí és només un UUID, o el primer 12 360 00:21:31,560 --> 00:21:32,810 bits del UUID. 361 00:21:32,810 --> 00:21:34,320 O bytes del UUID. 362 00:21:34,320 --> 00:21:35,770 I llavors jo sóc a la meva imatge. 363 00:21:35,770 --> 00:21:39,510 Així que ara Docker s'encarrega de enregistrament de tot el que vaig fer 364 00:21:39,510 --> 00:21:42,830 i la creació de la nova imatge basada en això. 365 00:21:42,830 --> 00:21:47,080 366 00:21:47,080 --> 00:21:52,560 >> No vaig a parlar de tarball, però hi ha una manera d'aconseguir una sola, 367 00:21:52,560 --> 00:21:58,200 crear una sola, o fer un sol imatge de la capa usant boles de quitrà. 368 00:21:58,200 --> 00:22:02,650 El que vaig a parlar d'això i el que s'utilitza sobretot avui en dia, 369 00:22:02,650 --> 00:22:03,270 és Dockerfile. 370 00:22:03,270 --> 00:22:07,260 Què és, tècnicament, el primer pas automatitzat per si mateix acoblable. 371 00:22:07,260 --> 00:22:11,920 Així Dockerfiles són les coses que vostè és veurem en un munt de repos GitHub 372 00:22:11,920 --> 00:22:13,150 avui en dia. 373 00:22:13,150 --> 00:22:16,420 És bàsicament un arxiu de text que descriu 374 00:22:16,420 --> 00:22:19,780 exactament com construir una imatge. 375 00:22:19,780 --> 00:22:25,540 >> I per cada línia, es crea en realitat el contenidor, s'executa aquesta línia, 376 00:22:25,540 --> 00:22:30,480 comet aquest contenidor en una nova imatge, i que, bàsicament, 377 00:22:30,480 --> 00:22:36,160 usar-lo per a totes les operacions posteriors fins arribar a l'última imatge. 378 00:22:36,160 --> 00:22:39,260 La qual cosa és bàsicament el acabar objectiu aquí, al final. 379 00:22:39,260 --> 00:22:42,420 I després que exec-- després escriure el seu Dockerfile, que 380 00:22:42,420 --> 00:22:46,750 és purament en el text, vostè fa una Docker construir i el nom de la imatge. 381 00:22:46,750 --> 00:22:50,000 >> I vostè assenyala en aquell que és on el Dockerfile és al. 382 00:22:50,000 --> 00:22:56,570 I vostè pot esperar veure la meva imatge com una imatge que té a nivell local. 383 00:22:56,570 --> 00:22:59,100 Així que això és només una visual exemple del que succeeix. 384 00:22:59,100 --> 00:23:00,820 Comences una imatge base amb. 385 00:23:00,820 --> 00:23:05,150 Corres que en un recipient que no altera la imatge de base en si. 386 00:23:05,150 --> 00:23:08,310 Però en comptes crea un reescriure la capa a la part superior de la mateixa 387 00:23:08,310 --> 00:23:10,340 on es fan els canvis, en el qual et compromets 388 00:23:10,340 --> 00:23:15,050 i es repeteix el procés fins que arribi a la seva imatge final. 389 00:23:15,050 --> 00:23:20,980 >> I en fer-ho, cada dos acumulació procés pot utilitzar les mateixes capes 390 00:23:20,980 --> 00:23:23,870 i la same-- bàsicament Docker emmagatzema en memòria cau aquestes capes. 391 00:23:23,870 --> 00:23:30,040 Així que si jo estic fent el mateix exacta procés, però en lloc d'instal·lar PHP, 392 00:23:30,040 --> 00:23:31,540 Estic instal·lant Python. 393 00:23:31,540 --> 00:23:34,210 Es va a utilitzar Apache i Ubuntu. 394 00:23:34,210 --> 00:23:39,570 Així que d'aquesta manera s'està utilitzant el disc. 395 00:23:39,570 --> 00:23:42,330 Utilitzeu la memòria cau i les imatges disponibles allà. 396 00:23:42,330 --> 00:23:45,320 397 00:23:45,320 --> 00:23:48,840 >> La peça final és del Registre, que és la manera de distribuir les seves imatges. 398 00:23:48,840 --> 00:23:52,710 I, com he esmentat abans, hi ha una versió del núvol de la mateixa, 399 00:23:52,710 --> 00:23:54,290 que és acoblable de concentradors. 400 00:23:54,290 --> 00:23:57,550 Vostè pot anar i explorar una gran quantitat de, bàsicament, 401 00:23:57,550 --> 00:24:04,900 és un producte SAS pública que vostè encara pot tenir imatges privades, 402 00:24:04,900 --> 00:24:06,590 però hi ha una gran quantitat d'imatges públiques. 403 00:24:06,590 --> 00:24:10,580 En realitat és il·limitat, pot empènyer imatges públiques il·limitades allà. 404 00:24:10,580 --> 00:24:13,730 I això és com es pot col·laborar amb el seu equip. 405 00:24:13,730 --> 00:24:17,159 >> Vostè només pot assenyalar-los en vostè Repo i poden descarregar-o la seva imatge 406 00:24:17,159 --> 00:24:18,200 i poden descarregar-lo. 407 00:24:18,200 --> 00:24:21,140 408 00:24:21,140 --> 00:24:24,990 Així que n'hi ha prou amb la xerrada. 409 00:24:24,990 --> 00:24:29,110 Qui vol veure algunes donem realment ràpid? 410 00:24:29,110 --> 00:24:31,330 Tot bé. 411 00:24:31,330 --> 00:24:34,050 Així que aquí el que tinc. 412 00:24:34,050 --> 00:24:37,480 Ca vostès veure la meva pantalla? 413 00:24:37,480 --> 00:24:38,390 Tot bé. 414 00:24:38,390 --> 00:24:45,810 >> Així que tinc Docker córrer aquí, així que pot comprovar és-- Aquesta és la versió 415 00:24:45,810 --> 00:24:47,510 de Docker que s'està executant. 416 00:24:47,510 --> 00:24:49,320 Pot fer informació Docker. 417 00:24:49,320 --> 00:24:55,730 Revisi tota la informació sobre el nombre de imatges que tenen, i així successivament i així successivament. 418 00:24:55,730 --> 00:24:58,890 Docker PS, no hi ha res en marxa. 419 00:24:58,890 --> 00:25:00,570 Concatenat ells. 420 00:25:00,570 --> 00:25:06,370 >> Així que el primer que vull fer és espectacle com es pot executar fàcilment un contenidor. 421 00:25:06,370 --> 00:25:09,350 Així que la bellesa sobre Metge termini, si en realitat 422 00:25:09,350 --> 00:25:14,700 no troba una imatge a nivell local, per defecte es parla amb el doctor Hub 423 00:25:14,700 --> 00:25:17,240 i tracta de trobar-hi i les descàrregues per vostè. 424 00:25:17,240 --> 00:25:22,820 Per tant, inclou una Docker comandament tirar, naturalment. 425 00:25:22,820 --> 00:25:26,130 >> Així que si faig un Docker termini, hola-món. 426 00:25:26,130 --> 00:25:28,890 427 00:25:28,890 --> 00:25:31,200 Així, primer es va per intentar localitzar-lo. 428 00:25:31,200 --> 00:25:36,140 En cas contrari, com es pot veure aquí, no podia trobar a nivell local. 429 00:25:36,140 --> 00:25:41,830 Ara mateix només va treure dues capes això va fer que la imatge i m'ho va passar. 430 00:25:41,830 --> 00:25:45,440 El món hola és bàsicament sortides, el que has fet. 431 00:25:45,440 --> 00:25:47,680 Així que aquest és el més fàcil, un dels exemples més fàcils. 432 00:25:47,680 --> 00:25:53,840 Així que en realitat jo només vaig córrer i acabat el recipient ben ràpid. 433 00:25:53,840 --> 00:25:59,500 >> Si vull run-- i per cert, si Vull moment en què, perquè ho sàpigues, 434 00:25:59,500 --> 00:26:03,572 aquest és el temps que triga a de fet girar i contenir-lo. 435 00:26:03,572 --> 00:26:05,030 Estem mesurant en milisegons. 436 00:26:05,030 --> 00:26:10,600 Així es pot veure el molt que això pot realment ajudarà no només a les proves, 437 00:26:10,600 --> 00:26:13,200 sinó també fins i tot desplegament. 438 00:26:13,200 --> 00:26:17,221 Així que això és una nota ràpida sobre això. 439 00:26:17,221 --> 00:26:18,970 El següent que sóc farem és en realitat 440 00:26:18,970 --> 00:26:21,930 executar una imatge que ja he preparat. 441 00:26:21,930 --> 00:26:24,460 Així finestra acoblable termini. 442 00:26:24,460 --> 00:26:27,240 -d és només una bandera per dir que s'executi en segon pla. 443 00:26:27,240 --> 00:26:30,290 I -p assigna certs ports. 444 00:26:30,290 --> 00:26:32,670 Perquè per defecte, el contenidors estan aïllades, 445 00:26:32,670 --> 00:26:36,080 el que ha d'especificar exactament com es pot accedir-hi. 446 00:26:36,080 --> 00:26:41,150 I en aquest cas, jo estic dient Docker per assignar un port aleatori al host 447 00:26:41,150 --> 00:26:44,560 a un port especificat dins el propi recipient. 448 00:26:44,560 --> 00:26:47,130 449 00:26:47,130 --> 00:26:56,460 I això és bàsicament on el image-- espero que això és la correcta. 450 00:26:56,460 --> 00:27:01,780 >> Així ho fa descàrregues paral·leles cadascuna d'aquestes capes com es pot veure aquí. 451 00:27:01,780 --> 00:27:06,949 Aquestes són de les capes fent la imatge final que he construït. 452 00:27:06,949 --> 00:27:08,115 Va a prendre un segon. 453 00:27:08,115 --> 00:27:11,290 454 00:27:11,290 --> 00:27:12,370 I voilà. 455 00:27:12,370 --> 00:27:16,590 >> Així que ara si faig un ps estibador, que hauria veure alguna cosa que s'està executant. 456 00:27:16,590 --> 00:27:22,250 Hauria veure la identificació, la imatge que aquest es basa apagat, 457 00:27:22,250 --> 00:27:23,880 i el comando que va ser executat. 458 00:27:23,880 --> 00:27:28,720 I la forma d'accedir-hi és bàsicament vas a aquest port. 459 00:27:28,720 --> 00:27:33,240 Així que em vaig a anar A-- aquest és que estic corrent en AWS. 460 00:27:33,240 --> 00:27:37,150 Vaig a anar a 32,769. 461 00:27:37,150 --> 00:27:37,650 Vaya. 462 00:27:37,650 --> 00:27:40,495 463 00:27:40,495 --> 00:27:41,120 I aquí anem. 464 00:27:41,120 --> 00:27:44,550 >> Així que això és en realitat un servei web que mostra 465 00:27:44,550 --> 00:27:46,240 el contenidor està sent serveix de. 466 00:27:46,240 --> 00:27:50,450 Així es pot veure que és de A9F contenidor. 467 00:27:50,450 --> 00:27:52,850 I aquí es tracta de la nom del contenidor. 468 00:27:52,850 --> 00:27:56,550 Així que vostès poden veure la rapidesa amb què era en realitat no només llençar, sinó també 469 00:27:56,550 --> 00:28:00,440 implementar aquest contenidor. 470 00:28:00,440 --> 00:28:05,070 >> Ara el següent pas és buscar a Dockerfiles 471 00:28:05,070 --> 00:28:09,430 i com podem realment construir noves imatges. 472 00:28:09,430 --> 00:28:15,250 Jo només vaig a anar a buscar el clon, 1 MOSTRA Dockerfile basat en l'anterior 473 00:28:15,250 --> 00:28:17,755 diagrama, el d'Apache i PHP. 474 00:28:17,755 --> 00:28:26,740 475 00:28:26,740 --> 00:28:28,140 Tant de bo em recordo de la meva repo. 476 00:28:28,140 --> 00:28:36,410 477 00:28:36,410 --> 00:28:38,750 >> Així que tinc el meu repositori en aquest moment. 478 00:28:38,750 --> 00:28:43,080 I vas a veure això molt en realitat. 479 00:28:43,080 --> 00:28:45,110 No m'instal·lo arbre. 480 00:28:45,110 --> 00:28:48,700 >> Així que, bàsicament vas a veure com la documentació de codi font al voltant 481 00:28:48,700 --> 00:28:51,240 i, a continuació Dockerfile en una com empaquetar en realitat. 482 00:28:51,240 --> 00:28:57,970 Així que és només una mostra de PHP que es fa ressò CS50 hola. 483 00:28:57,970 --> 00:29:01,550 >> Així que si vull executar-lo, Faré acumulació finestra acoblable. 484 00:29:01,550 --> 00:29:03,370 He de construir primer. 485 00:29:03,370 --> 00:29:12,420 Vaig a nomenar-demo_cs50. 486 00:29:12,420 --> 00:29:16,470 I vostè necessita una etiqueta a ella també. 487 00:29:16,470 --> 00:29:19,802 Així que anem a dir-v1 dot. 488 00:29:19,802 --> 00:29:21,760 Així com he descrit abans, el que estic fent avui 489 00:29:21,760 --> 00:29:26,840 és que estic dient Docker anar ús que-- realitat, ho sento, el meu mal. 490 00:29:26,840 --> 00:29:29,450 491 00:29:29,450 --> 00:29:32,500 No prenem una ullada en la pròpia Dockerfile. 492 00:29:32,500 --> 00:29:39,020 Així que les úniques coses d'aquí estan index.php, així com el fitxer Llegiu-me 493 00:29:39,020 --> 00:29:39,810 i un Dockerfile. 494 00:29:39,810 --> 00:29:44,600 >> Així que si vostè fa una ullada a el Dockerfile, pel que és 495 00:29:44,600 --> 00:29:47,150 molt similar al que He descrit anteriorment. 496 00:29:47,150 --> 00:29:51,220 És només un munt de passos que executa Docker 497 00:29:51,220 --> 00:29:56,330 mitjançant la creació i enderrocar contenidors i [? explicant?] ells en una imatge. 498 00:29:56,330 --> 00:29:59,570 >> I, bàsicament, es pot veure- [inaudible] que aquí-- 499 00:29:59,570 --> 00:30:04,340 però això és de la repo local. 500 00:30:04,340 --> 00:30:06,410 Es va a anar i index.php grab. 501 00:30:06,410 --> 00:30:10,970 Així que aquest és l'únic codi font que són en realitat part de la seva sol·licitud. 502 00:30:10,970 --> 00:30:16,800 Tot això són bàsicament sistema de canonades de funcionament, 503 00:30:16,800 --> 00:30:21,460 obtenir els paquets correctes i Apache i PHP, i altres coses. 504 00:30:21,460 --> 00:30:26,950 Però això és en realitat prenent index.php i comprometre en el contenidor, 505 00:30:26,950 --> 00:30:28,210 en la imatge. 506 00:30:28,210 --> 00:30:33,120 >> Així que si vas endavant i executar el comanda fent el següent, 507 00:30:33,120 --> 00:30:36,155 es going-- realitat, això pot trigar una mica. 508 00:30:36,155 --> 00:30:40,870 509 00:30:40,870 --> 00:30:42,455 Esperem que no pren massa temps. 510 00:30:42,455 --> 00:30:45,129 511 00:30:45,129 --> 00:30:46,170 Així que vostè pot veure els passos. 512 00:30:46,170 --> 00:30:49,320 I m'animo a anar tornar a casa avui i provar-ho. 513 00:30:49,320 --> 00:30:51,280 I Mà descriurà exactament com es fa això. 514 00:30:51,280 --> 00:30:57,810 Però és realment gran per veure exactament el que està succeint darrere de les escenes. 515 00:30:57,810 --> 00:31:02,420 Però és ridículament fàcil de construir imatges i desplegar usant Docker. 516 00:31:02,420 --> 00:31:12,170 517 00:31:12,170 --> 00:31:14,050 >> Es tracta de prendre una mica més del que esperava. 518 00:31:14,050 --> 00:31:29,085 519 00:31:29,085 --> 00:31:32,690 >> Anem a veure el que passa quan usted-- refredar. 520 00:31:32,690 --> 00:31:36,260 Així com vostè pot veure, cada un d'aquests passos representar línies en el Dockerfile. 521 00:31:36,260 --> 00:31:42,570 I mostra que aquí construït amb èxit aquesta imatge. 522 00:31:42,570 --> 00:31:46,480 >> Així que si ho faig imatges Treballador Portuari, vaig a veure totes les imatges que tinc a nivell local. 523 00:31:46,480 --> 00:31:52,160 I un d'ells es diu el meu nom d'usuari, i el nom de la imatge, 524 00:31:52,160 --> 00:31:56,050 i la representing-- etiqueta sobretot és una etiqueta de versió. 525 00:31:56,050 --> 00:31:58,040 >> Així que ara si vull córrer ella, ho faig termini finestra acoblable. 526 00:31:58,040 --> 00:32:06,040 527 00:32:06,040 --> 00:32:14,960 I jo només vull fer un -P -d. Feu v1. 528 00:32:14,960 --> 00:32:18,500 Així que puc veure ara que tinc dos contenidors de córrer, el que acabo de 529 00:32:18,500 --> 00:32:21,230 creat i el hola Docker un que em van donar passat. 530 00:32:21,230 --> 00:32:24,320 >> I es pot veure aquí que assignat un port diferent. 531 00:32:24,320 --> 00:32:30,710 Així que si vaig a la mateixa IP, però assigno un port: diferent espero que no ho vaig fer. 532 00:32:30,710 --> 00:32:33,060 Així que ara es tracta de l'aplicació que acabo desplegat. 533 00:32:33,060 --> 00:32:35,980 534 00:32:35,980 --> 00:32:43,900 >> Si vull fer canvis, em pot editar ràpidament el codi font 535 00:32:43,900 --> 00:32:49,050 i faci el següent. 536 00:32:49,050 --> 00:32:55,170 Fem hola Harvard. 537 00:32:55,170 --> 00:32:57,989 Així que ara el que està passant a succeir és que jo sóc 538 00:32:57,989 --> 00:32:59,905 va a etiquetar amb un diferent versió-- oh, 539 00:32:59,905 --> 00:33:03,080 No aquesta guy-- Etiquétalo amb una versió diferent. 540 00:33:03,080 --> 00:33:05,735 I vostè va a veure- fan vostès espereu 541 00:33:05,735 --> 00:33:11,020 a prendre la mateixa quantitat de temps per construir una segona vegada o no? 542 00:33:11,020 --> 00:33:14,470 Molt bé, i ningú sap per què? 543 00:33:14,470 --> 00:33:15,020 Parlar alt. 544 00:33:15,020 --> 00:33:16,350 >> AUDIÈNCIA: [inaudible] 545 00:33:16,350 --> 00:33:19,830 >> NICOLA Kabar: És bàsicament ens només canvien un dels passos posteriors. 546 00:33:19,830 --> 00:33:23,110 I per tant es va a utilitzar el memòria cau i utilitzar cadascuna d'aquestes capes. 547 00:33:23,110 --> 00:33:27,080 I això és realment una cosa de la característiques assassines de Docker 548 00:33:27,080 --> 00:33:32,930 és la forma en que realment utilitza i reutilitzacions fer-se càrrec 549 00:33:32,930 --> 00:33:36,950 el seu disc per al mateix peces exactes d'informació. 550 00:33:36,950 --> 00:33:40,700 >> Així que si fem el mateix, va trigar tot just un parell de segons. 551 00:33:40,700 --> 00:33:48,860 Si volem redeploy-- ara Hauria de tenir tres contenidors. 552 00:33:48,860 --> 00:33:56,160 Però aquest està sent que es presenten en ell-- 7 un. 553 00:33:56,160 --> 00:33:58,860 Així que ara és el tercer recipient. 554 00:33:58,860 --> 00:34:02,580 Tothom entén el que acabo de fer aquí? 555 00:34:02,580 --> 00:34:06,320 >> Així que ara si voleu compartir aquesta contenidor molt ràpid amb els amics, 556 00:34:06,320 --> 00:34:14,840 només pot fer-ho finestra acoblable empènyer el nom del contenidor, amb sort. 557 00:34:14,840 --> 00:34:20,130 Així que ara que va a empènyer A-- No em vaig inscriure aquí. 558 00:34:20,130 --> 00:34:33,511 559 00:34:33,511 --> 00:34:34,219 Em sap greu això. 560 00:34:34,219 --> 00:34:39,219 Però jo no vaig a solucionar això ara. 561 00:34:39,219 --> 00:34:42,780 Però, bàsicament, que una ordre és just pujant empènyer. 562 00:34:42,780 --> 00:34:45,670 I tu seràs capaç de veure si vas a Docker Hub 563 00:34:45,670 --> 00:34:48,587 I es connecti, ets serà capaç de veure-ho. 564 00:34:48,587 --> 00:34:50,420 I llavors vostè pot simplement apuntar tot el que està passant 565 00:34:50,420 --> 00:34:52,750 utilitzar aquesta imatge per anar i tiri d'ella. 566 00:34:52,750 --> 00:34:55,460 I poden usar-lo. 567 00:34:55,460 --> 00:34:57,760 >> Amb això, amb sort Jo com que vaig demostrar 568 00:34:57,760 --> 00:35:01,230 el fàcil que és treballar amb Docker. 569 00:35:01,230 --> 00:35:06,610 I jo només vaig a tornar-lo a Mà. 570 00:35:06,610 --> 00:35:11,760 I ell va a partir d'aquí. 571 00:35:11,760 --> 00:35:13,990 >> MÀ MARQUES: Molt bé gràcies, gràcies Nico. 572 00:35:13,990 --> 00:35:18,700 573 00:35:18,700 --> 00:35:20,614 I què? 574 00:35:20,614 --> 00:35:24,410 Així que una de les coses que volgut fer és posar junts 575 00:35:24,410 --> 00:35:28,820 per què això és un important-- què Docker i per què 576 00:35:28,820 --> 00:35:33,000 contenidors són tal novetat important, 577 00:35:33,000 --> 00:35:36,890 una nova manera de fer realment programari. 578 00:35:36,890 --> 00:35:41,300 >> I abans que jo, me'n vaig a només introduir unes poques estadístiques. 579 00:35:41,300 --> 00:35:42,790 No vaig a llegir tot això. 580 00:35:42,790 --> 00:35:52,540 Però això mostra molt sobre com popular aquest es troba a la comunitat. 581 00:35:52,540 --> 00:35:56,310 Les tecnologies bàsiques Docker són de codi obert. 582 00:35:56,310 --> 00:36:03,560 Així que això és Docker motor, Compose, Swarm, un munt d'altres coses 583 00:36:03,560 --> 00:36:05,210 és tot codi obert. 584 00:36:05,210 --> 00:36:10,590 I tenim, què vaig fer dir, 1.300 col·laboradors. 585 00:36:10,590 --> 00:36:15,630 Estàs veient ara, si ens fixem en la nombre d'ofertes de treball, l'última vegada 586 00:36:15,630 --> 00:36:19,640 busquem, que estava a uns 43 mil llocs de treball obertures esmentar específicament 587 00:36:19,640 --> 00:36:22,230 familiaritat amb Docker. 588 00:36:22,230 --> 00:36:26,450 Centenars de milions d'imatges tenen descarregat de Docker Hub. 589 00:36:26,450 --> 00:36:31,870 I, bé, molt més grans estadístiques. 590 00:36:31,870 --> 00:36:34,770 >> Per als que tinguin curiositat, es va ser escrit originalment en Python 591 00:36:34,770 --> 00:36:37,730 i després reescrita a Vés. 592 00:36:37,730 --> 00:36:40,320 I només han passat obrir source-- és només 593 00:36:40,320 --> 00:36:44,950 estat posat en llibertat per prop de 2 i 1/2 anys, el que significa que en 2 i 1/2 anys, 594 00:36:44,950 --> 00:36:48,020 hem vist una enorme quantitat de creixement i la importància 595 00:36:48,020 --> 00:36:50,190 d'aquesta a la comunitat. 596 00:36:50,190 --> 00:36:52,400 I per això vull parlar una mica sobre per què. 597 00:36:52,400 --> 00:36:54,940 598 00:36:54,940 --> 00:36:59,880 >> Així que només reiterar alguns Punts clau de Nico, Docker és ràpid. 599 00:36:59,880 --> 00:37:00,630 És portàtil. 600 00:37:00,630 --> 00:37:02,500 És reproduïble. 601 00:37:02,500 --> 00:37:06,130 I en ella s'estableix un entorn estàndard. 602 00:37:06,130 --> 00:37:13,370 >> I què-- aquesta és la meva merda eradicar monòlits slide-- el 603 00:37:13,370 --> 00:37:17,990 està ajudant a la gent, que una gran quantitat de la indústria del programari 604 00:37:17,990 --> 00:37:21,400 començat a fer al dècada de 2000, s'està movent 605 00:37:21,400 --> 00:37:24,200 a partir d'aquests monolítica aplicacions individuals 606 00:37:24,200 --> 00:37:28,590 on cada dependència havia de ser provat abans que tota l'aplicació tenia 607 00:37:28,590 --> 00:37:31,280 per ser desplegat, que podria significar una pàgina web 608 00:37:31,280 --> 00:37:36,240 Només ens van donar un cop desplegat cada tres mesos, o més, 609 00:37:36,240 --> 00:37:42,650 a un servei molt més arquitectura orientada 610 00:37:42,650 --> 00:37:46,090 o escriu en components diferents de l'arquitectura de l'aplicació. 611 00:37:46,090 --> 00:37:48,610 I així permetent aquests tipus d'arquitectures 612 00:37:48,610 --> 00:37:52,250 que aprofiten Docker s'executi en aquests tres 613 00:37:52,250 --> 00:37:58,450 àrees principals de desenvolupament, que es desenvolupament escrivint el seu codi real, 614 00:37:58,450 --> 00:38:00,140 provar el seu codi, i el seu desplegament. 615 00:38:00,140 --> 00:38:03,000 616 00:38:03,000 --> 00:38:05,420 >> Per què és això important? 617 00:38:05,420 --> 00:38:09,920 Si ets A-- me donar-los un exemple. 618 00:38:09,920 --> 00:38:13,600 Si vostè és una pàgina web desenvolupador dispositiu, ets 619 00:38:13,600 --> 00:38:19,020 el desenvolupament d'un lloc web que es basa en la base de dades que David produeix aquí. 620 00:38:19,020 --> 00:38:20,490 Ho sentim, David, t'estic trucant. 621 00:38:20,490 --> 00:38:22,984 622 00:38:22,984 --> 00:38:24,900 Si volia implementar tota la cosa, que et 623 00:38:24,900 --> 00:38:28,870 d'esperar sota un tradicional desenvolupament de programari monolític 624 00:38:28,870 --> 00:38:32,710 medi ambient, que hauria d'esperar fins que es va fer amb la base de dades 625 00:38:32,710 --> 00:38:36,030 abans de poder realment fer qualsevol canvi en el seu lloc web. 626 00:38:36,030 --> 00:38:40,900 Caldria tornar a implementar el tota sol·licitud per fer-ho. 627 00:38:40,900 --> 00:38:45,490 >> ¿I què Docker l'ajuda a fer és cada treball persona en diferents components 628 00:38:45,490 --> 00:38:52,990 i actualitzar a mesura que avancen, només fer assegurar-se que les interfícies romanen igual. 629 00:38:52,990 --> 00:38:56,350 Així que el que ha fet s'està desplaçada persones 630 00:38:56,350 --> 00:39:03,950 de fer aquests massiva monolítica programari amb arquitectura que 631 00:39:03,950 --> 00:39:07,610 desplegat cada mes a un continu integració i desenvolupament continu 632 00:39:07,610 --> 00:39:08,490 medi ambient. 633 00:39:08,490 --> 00:39:12,580 >> Ara bé, això no és exclusiu de Docker, però Docker fa que sigui molt més fàcil, 634 00:39:12,580 --> 00:39:16,620 el que significa que és, bàsicament, constantment el desplegament. 635 00:39:16,620 --> 00:39:20,690 Parlem amb empreses que són la implementació d'aplicacions de revestiment públics 636 00:39:20,690 --> 00:39:30,180 milers de vegades al dia, ja que veuen el valor en només fer 637 00:39:30,180 --> 00:39:33,740 petits canvis, i sempre ja que s'executa a través de les proves, 638 00:39:33,740 --> 00:39:35,900 deixar que se surti a producció. 639 00:39:35,900 --> 00:39:41,890 Nico sempre em deia anteriorment que en molts entorns, 640 00:39:41,890 --> 00:39:46,580 el cicle de vida normal d'un recipient es mesura en segons, 641 00:39:46,580 --> 00:39:50,460 mentre que una màquina virtual podrien ser mesurat en mesos. 642 00:39:50,460 --> 00:39:54,590 643 00:39:54,590 --> 00:39:58,690 >> Volia prendre un lleuger giri aquí perquè sóc 644 00:39:58,690 --> 00:40:00,170 en una institució educativa. 645 00:40:00,170 --> 00:40:06,670 Volia donar un exemple de com això funciona en una investigació educativa 646 00:40:06,670 --> 00:40:07,670 situació. 647 00:40:07,670 --> 00:40:10,930 Així que hi ha una organització anomenats bioboxes. 648 00:40:10,930 --> 00:40:15,450 Bioboxes fa ADN anàlisi per als investigadors. 649 00:40:15,450 --> 00:40:22,029 >> Ara el que van trobar va ser que quan 1 researcher-- i això no és 650 00:40:22,029 --> 00:40:24,070 la falla de qualsevol particular, researcher-- però quan 651 00:40:24,070 --> 00:40:31,240 un investigador desplegat un algoritme per analitzar, 652 00:40:31,240 --> 00:40:36,670 De manera particular, una mostra d'ADN, escriurien el programari, 653 00:40:36,670 --> 00:40:39,980 publicar això, potser a GitHub o en un altre lloc, 654 00:40:39,980 --> 00:40:42,680 i després van ser fetes. 655 00:40:42,680 --> 00:40:47,440 >> Bé, el problema era que No era necessàriament reproduïble. 656 00:40:47,440 --> 00:40:51,610 Perquè la finalitat de entendre el programari, 657 00:40:51,610 --> 00:40:54,830 se'ls prepara per al entorn exacta desenvolupament 658 00:40:54,830 --> 00:41:00,460 que l'investigador que utilitza, generalment el seu ordinador portàtil o un servidor, o dades 659 00:41:00,460 --> 00:41:04,280 centre que estaven usant. 660 00:41:04,280 --> 00:41:11,530 I, en conseqüència, era molt difícil per reproduir resultats de la investigació quan 661 00:41:11,530 --> 00:41:16,910 l'anàlisi de mostres d'ADN per buscar les coses com incidence-- 662 00:41:16,910 --> 00:41:23,830 comparar la incidència d'atacs cardíacs sobre la base de certs gens que estan presents, 663 00:41:23,830 --> 00:41:28,900 per exemple, o el risc de càncer, o qualsevol dels altres tipus de coses. 664 00:41:28,900 --> 00:41:33,900 >> Així que en lloc del que van fer va ser van començar a crear contenidors. 665 00:41:33,900 --> 00:41:39,380 I vostè pot anar a bioboxes.org, que és una gran organització. 666 00:41:39,380 --> 00:41:43,900 I el que fan és que produeixen contenidors basen en la investigació. 667 00:41:43,900 --> 00:41:46,840 I llavors cada vegada que algú envia en la seva mostra, que pugui funcionar. 668 00:41:46,840 --> 00:41:52,770 I té tot l'entorn necessari per executar l'algoritme 669 00:41:52,770 --> 00:41:55,370 i produir els resultats. 670 00:41:55,370 --> 00:41:58,250 I estan trobant que són molt més probable i molt 671 00:41:58,250 --> 00:42:01,300 més ràpidament capaç de retornar resultats a la gent. 672 00:42:01,300 --> 00:42:06,860 >> I de fet, el que la gent està fent s'estan executant les seves pròpies anàlisis d'ADN, 673 00:42:06,860 --> 00:42:11,220 enviar que per bioboxes, i llavors Biobox simplement pren les dades, 674 00:42:11,220 --> 00:42:15,350 corre contra la varietat de diferents contenidors 675 00:42:15,350 --> 00:42:19,030 per veure resultats diferents basat en diferents investigacions. 676 00:42:19,030 --> 00:42:21,860 Així que és una molt poderosa manera en què els investigadors 677 00:42:21,860 --> 00:42:28,070 pot fer una sola instància que permet altres persones per tractar de reproduir 678 00:42:28,070 --> 00:42:28,650 els resultats. 679 00:42:28,650 --> 00:42:31,710 680 00:42:31,710 --> 00:42:34,360 >> Llavors, com començar? 681 00:42:34,360 --> 00:42:37,950 682 00:42:37,950 --> 00:42:39,800 Estem ben suportat en Linux. 683 00:42:39,800 --> 00:42:43,070 Així que si voleu instal·lar res en Linux, 684 00:42:43,070 --> 00:42:45,620 vostè utilitza la seva norma gestor de paquets per a instal·lar. 685 00:42:45,620 --> 00:42:47,600 Si vostè està utilitzant una Debian, és get apt. 686 00:42:47,600 --> 00:42:50,500 CentOS és molt ric. 687 00:42:50,500 --> 00:42:53,500 Fedora Red Hat és rpm-- no me'n recordo. 688 00:42:53,500 --> 00:42:56,070 De totes maneres, tot hi és. 689 00:42:56,070 --> 00:42:59,610 Donem suport a una gran varietat de les distribucions de Linux. 690 00:42:59,610 --> 00:43:01,150 Podeu comprovar aquests cap a fora. 691 00:43:01,150 --> 00:43:06,370 >> També tenim opcions perquè vostè podria funcionar en Mac o Windows. 692 00:43:06,370 --> 00:43:10,670 Ara Nico va esmentar anteriorment que només s'admet en Linux. 693 00:43:10,670 --> 00:43:18,180 Això és cert, ja que necessita un nucli de Linux. 694 00:43:18,180 --> 00:43:20,540 Però, es pot executar en una màquina virtual. 695 00:43:20,540 --> 00:43:25,290 I el que el Docker Toolbox fa, que es pot descarregar, 696 00:43:25,290 --> 00:43:27,610 que et dóna aquesta màquina virtual. 697 00:43:27,610 --> 00:43:37,260 >> Així que només un ràpid 48 segon, crec, descàrrec. 698 00:43:37,260 --> 00:43:40,670 Només busca en Docker Caixa d'eines, descarregar-lo a la Mac, 699 00:43:40,670 --> 00:43:43,910 i aquesta part és de curs accelerat perquè qui 700 00:43:43,910 --> 00:43:47,620 vol veure un senyal de descàrrega? 701 00:43:47,620 --> 00:43:54,190 La instal·lació estàndard de Mac, i llavors estàs 702 00:43:54,190 --> 00:43:59,795 anar a veure a Jerome va posar en la seva contrasenya. 703 00:43:59,795 --> 00:44:00,670 Això és molt emocionant. 704 00:44:00,670 --> 00:44:03,510 705 00:44:03,510 --> 00:44:06,230 I després de que s'instal·li un tot grup d'eines. 706 00:44:06,230 --> 00:44:10,010 I particularment, es farà instal·lar una línia d'ordres. 707 00:44:10,010 --> 00:44:14,220 I llavors es podia veure Jerome provar les seves imatges. 708 00:44:14,220 --> 00:44:19,050 709 00:44:19,050 --> 00:44:22,640 >> I a continuació, sobre aquesta base, es pot veure que YouTube 710 00:44:22,640 --> 00:44:27,420 pensa que Nico li interessa Star Wars, El xou de Jimmy Kimmel, 711 00:44:27,420 --> 00:44:29,020 i crec que Ellen. 712 00:44:29,020 --> 00:44:34,130 Crec que això últim és un clip d'un show d'Ellen. 713 00:44:34,130 --> 00:44:37,760 >> Així Docker Toolbox ve encara amb alguna cosa més que la màquina Docker. 714 00:44:37,760 --> 00:44:39,840 Així Docker màquina és el que ajuda a 715 00:44:39,840 --> 00:44:43,710 es configura una virtuals màquina en el seu Windows 716 00:44:43,710 --> 00:44:52,080 o Mac-- la seva caixa de Windows o Mac box-- i l'ajuda a fer l'aprovisionament, 717 00:44:52,080 --> 00:44:54,040 >> Però també ve amb Eixam i Compose, 718 00:44:54,040 --> 00:45:00,840 que estan dissenyats per ajudar a fer gran desplegaments a escala de la seva aplicació. 719 00:45:00,840 --> 00:45:04,000 Així que si vol gestionar grups de nodes, 720 00:45:04,000 --> 00:45:08,450 raïms de contenidors, compondre i Eixam són el camí a seguir al respecte. 721 00:45:08,450 --> 00:45:11,430 >> I per descomptat que ve amb Docker Motor i Kitematic, 722 00:45:11,430 --> 00:45:13,250 que és la interfície gràfica d'usuari d'escriptori. 723 00:45:13,250 --> 00:45:17,060 També he de dir Docker Registre, que no s'inclou a la caixa d'eines, 724 00:45:17,060 --> 00:45:23,150 però és una manera perquè pugui executar el seu propi registres de Docker Imatges com Docker 725 00:45:23,150 --> 00:45:28,970 Hub, però també pot simplement utilitzar Docker Hub com una manera de fer això. 726 00:45:28,970 --> 00:45:32,955 >> I, gir de la trama, que s'està veient que s'executa en un contenidor. 727 00:45:32,955 --> 00:45:34,830 I així és com estem distribuir les nostres diapositives. 728 00:45:34,830 --> 00:45:38,610 Tota aquesta presentació és en realitat un conjunt de diapositives HTML. 729 00:45:38,610 --> 00:45:43,170 I s'està executant en un contenidor, que pot obtenir por-- 730 00:45:43,170 --> 00:45:45,596 >> NICOLA Kabar: Sí, pel que és córrer a temps complet en la meva Max. 731 00:45:45,596 --> 00:45:47,540 I estic presentant d'ella. 732 00:45:47,540 --> 00:45:50,910 I vostè acaba de fer Docker després instal·lar la seva caixa d'eines. 733 00:45:50,910 --> 00:45:57,340 Vostè només pot fer una carrera finestra acoblable i fer-ho, i utilitzar les diapositives. 734 00:45:57,340 --> 00:45:58,830 >> MÀ MARCA: ¿I això és tot. 735 00:45:58,830 --> 00:46:02,160 Així que gràcies a tots per haver vingut. 736 00:46:02,160 --> 00:46:03,990 I estem disposats a respondre a les preguntes. 737 00:46:03,990 --> 00:46:07,810 He de dir abans que ningú deixa existeix samarretes enllà. 738 00:46:07,810 --> 00:46:10,940 Malauradament qualsevol que estigui veient això en Livestream o vídeo, 739 00:46:10,940 --> 00:46:12,820 però tenim Docker Samarretes enllà. 740 00:46:12,820 --> 00:46:16,250 I sabem estudiants Docker, i en la meva experiència, 741 00:46:16,250 --> 00:46:18,940 professors també, com la roba gratis. 742 00:46:18,940 --> 00:46:22,490 >> Així que gràcies a tots per venir. 743 00:46:22,490 --> 00:46:27,050 I segueix-nos a Twitter si vols, o no ho fa. 744 00:46:27,050 --> 00:46:27,910 No m'importa. 745 00:46:27,910 --> 00:46:29,430 També segueixi Docker a Twitter. 746 00:46:29,430 --> 00:46:31,890 Això també és interessant. 747 00:46:31,890 --> 00:46:32,990 I llavors això és tot. 748 00:46:32,990 --> 00:46:33,490 Docker.com. 749 00:46:33,490 --> 00:46:35,410 Gràcies. 750 00:46:35,410 --> 00:46:39,360 >> [Aplaudiments] 751 00:46:39,360 --> 00:46:41,625