-- ·|­û / µù¥U -- ¡@
¡@±b¸¹¡G
¡@±K½X¡G
¡@ | µù¥U | §Ñ°O±K½X
10/8 ·s®Ñ¨ì¡I 10/1 ·s®Ñ¨ì¡I 9/24 ·s®Ñ¨ì¡I 9/18 ·s®Ñ¨ì¡I
ÁʮѬyµ{¡EQ & A¡E¯¸°È¯d¨¥ª©¡E«ÈªA«H½c
¢x 3ds Max¢x Maya¢x Rhino¢x After Effects¢x SketchUp¢x ZBrush¢x Painter¢x Unity¢x
¢x PhotoShop¢x AutoCad¢x MasterCam¢x SolidWorks¢x Creo¢x UG¢x Revit¢x Nuke¢x
¢x C#¢x C¢x C++¢x Java¢x ¹CÀ¸µ{¦¡¢x Linux¢x ´O¤J¦¡¢x PLC¢x FPGA¢x Matlab¢x
¢x Àb«È¢x ¸ê®Æ®w¢x ·j¯Á¤ÞÀº¢x ¼v¹³³B²z¢x Fluent¢x VR+AR¢x ANSYS¢x ²`«×¾Ç²ß¢x
¢x ³æ´¹¤ù¢x AVR¢x OpenGL¢x Arduino¢x Raspberry Pi¢x ¹q¸ô³]­p¢x Cadence¢x Protel¢x
¢x Hadoop¢x Python¢x Stm32¢x Cortex¢x Labview¢x ¤â¾÷µ{¦¡¢x Android¢x iPhone¢x
¥i¬d®Ñ¦W,§@ªÌ,ISBN,3dwoo®Ñ¸¹
¸Ô²Ó®ÑÄy¤ÀÃþ

Docker¹ê¾Ô(²Ä2ª©)

( ²Åé ¦r)
§@ªÌ¡G[¬ü]ªN¤Ò¡P¥§§Jù¤Ò(Jeff Nickoloff),[¬ü]´µ¸¦ªâ¡P®w®¦´µ§Q(Stephen Kuenzli) µÛ¡F¯ÕĬ¹çĶÃþ§O¡G1. -> §@·~¨t²Î -> Docker
ĶªÌ¡G
¥Xª©ªÀ¡G²MµØ¤j¾Ç¥Xª©ªÀDocker¹ê¾Ô(²Ä2ª©) 3dWoo®Ñ¸¹¡G 54580
¸ß°Ý®ÑÄy½Ð»¡¥X¦¹®Ñ¸¹¡I

¡i¦³®w¦s¡j
NT°â»ù¡G 400 ¤¸

¥Xª©¤é¡G3/1/2021
­¶¼Æ¡G327
¥úºÐ¼Æ¡G0
¯¸ªø±ÀÂË¡G
¦L¨ê¡G¶Â¥Õ¦L¨ê»y¨t¡G ( ²Åé ª© )
¥[¤JÁʪ«¨® ¢x¥[¨ì§Úªº³Ì·R
(½Ð¥ýµn¤J·|­û)
ISBN¡G9787302574675
§@ªÌ§Ç¡@|¡@ĶªÌ§Ç¡@|¡@«e¨¥¡@|¡@¤º®e²¤¶¡@|¡@¥Ø¿ý¡@|¡@§Ç
(²Åé®Ñ¤W©Ò­z¤§¤U¸ü³sµ²¯Ó®É¶O¥\, ®¤¤£¾A¥Î¦b¥xÆW, ­YŪªÌ»Ý­n½Ð¦Û¦æ¹Á¸Õ, ®¤¤£«OÃÒ)
§@ªÌ§Ç¡G

ĶªÌ§Ç¡G

«e¨¥¡G

¦Û±q§Ú­Ì¤_2013¦~¶}©l°Ñ»P¥H¨Ó¡ADocker©M®e¾¹ªÀ°Ï¤w¸g¨«¹L«Üªø¤@¬q¸ô¡C¦Û2016¦~Jeff¼g§@¡mDocker¹ê¾Ô(²Ä2ª©)¡nªº²Ä1ª©¥H¨Ó¡ADockerµo¥Í¤F¤@¨Ç·N·Q¤£¨ìªºÅܤơC­È±o¼y©¯ªº¬O¡A¤j¦h¼Æ­±¦V¥Î¤áªº±µ¤f©M®Ö¤ß·§©À³£¥H¦V¦Z­Ý®eªº¤è¦¡¦V«eºt¶iµÛ¡C¡mDocker¹ê¾Ô(²Ä2ª©)¡nªº«e¤T¤À¤§¤G³¡¤À°w¹ï·s¼W¥\¯à©Î¤w¸Ñ¨Mªº°ÝÃD¶i¦æ¤F§ó·s¡C¥¿¦p¹w´Áªº¨º¼Ë¡A¤W¤@ª©ªº²Ä¢»³¡¤À«h»Ý­n§¹¥þ­«¼g¡C¦Û±q¥»®Ñªº²Ä1ª©¥Xª©¥H¨Ó¡ADocker¤w¸g¦b®e¾¹ªº½s±Æ¡BÀ³¥Îµ{§Çªº³s±µ¡B±M¦³¤ª®e¾¹²£«~¡B¦h®e¾¹À³¥Î¥´¥]©M¥\¯àªA°È¤Æ¥­»Oµ¥¤è­±¨ú±o«Ü¤jªº¶i®i¡C¥»®Ñªº²Ä2ª©­«ÂI¤¶²ÐDocker®e¾¹ªº°ò¥»·§©À©M¹ê½î¡A¦}Á׶}Á¿¸Ñ¹ï¤_Docker¨Ó»¡¹L¤_§Ö³tÅܤƪº§Þ³N¡C
Docker³Ì¤jªºÅܤƬO¶}µo©M¨Ï¥Î¤F´X­Ó®e¾¹¨ó½Õ¾¹¡C®e¾¹¨ó½Õ¾¹ªº¥D­n¥Øªº¬O¸ó¥D¾÷¶°¸s¹B¦æÀ³¥Îµ{§ÇªA°È¡C³o¨Ç®e¾¹¨ó½Õ¾¹¤¤³ÌµÛ¦WªºKubernetes¤w¸g¦b·~¬É±o¨ì¼sªxªö¥Î¡A¦}±o¨ì´X¥G©Ò¦³¥D­n§Þ³N¨ÑÀ³°Óªº¤ä«ù¡CCloud Native Computing Foundation¬O³ò¶Kubernetes¶µ¥Ø¦¨¥ßªº°òª÷·|¡A¸Ó°òª÷·|·|°µ«Ü¦h»PKubernetes¬ÛÃöªº©w¨î¤Æ¶µ¥Ø¡A¨Ò¦p¡A¥i¥H±N¤ª­ì¥ÍªºÀ³¥Îµ{§Ç­«·s³]­p¬°¾A¦X¦bKubernetes¥­»O¤W³¡¸p¡C¦ý­«­nªº¬O¡A¤£­n¤ÓÃöª`¥«³õÀç¾P©Î¯S©wªº®e¾¹½s±Æ§Þ³N¡C
¡mDocker¹ê¾Ô(²Ä2ª©)¡n¤£²[»\Kubernetesªº¤¶²Ð¡A­ì¦]¦³¨â­Ó¡C
­º¥ý¡AºÉºÞKubernetesÀHDocker for Desktop¤@°_´£¨Ñ¡A¦ý¥¦ªºÅé¿n¤Q¤ÀÃe¤j¥B¦b¤£Â_ÅܤơC¦bµuµu´X³¹©Î¤@¥»¤Ö¤_400­¶ªº®Ñ¤¤¡A³£¤£¤Ó¥i¯à´£¨ÑÃö¤_³o­Ó¥DÃD¥ô¦ó¦³²`«×ªºÄÄ­z¡C¦P®É¡AÃö¤_Kubernetes¦³¤j¶qÀu¨qªº¦b½u¸ê·½©M±M·~®ÑÄy¡C§Ú­Ì§Æ±æ¡mDocker¹ê¾Ô(²Ä2ª©)¡n±Mª`¤_¤@­Ó§ó¤jªº¥DÃD¡X¡XªA°È½s±Æ¡A¦Ó¤£¬O¦bº¾¸Hªº¦a¤èªá¶O¤j¶qºë¤O¡C
¨ä¦¸¡ADockerªþ±a¤FSwarm¶°¸s©M½s±Æ¤u¨ã¡C¹ï¤_¸û¤pªº©ÎÃä½t­pºâÀô¹Ò¤¤ªº¶°¸s¡ADocker¤wºïºï¦³§E¡C¤j¶q²Õ´¨C¤Ñ³£¦b´r§Ö¦a¨Ï¥ÎSwarm¡A¦ÓSwarm«D±`¾A¦X¦P®É¶}©lªA°È½s±Æ©M®e¾¹¶}µoªºªì¾ÇªÌ¡C¤j¦h¼Æ¤u¨ã©M¤è®×³£¥i¥H²³æ¦a±q®e¾¹Âಾ¨ìªA°È¼Ò¦¡¡AÀ³¥Îµ{§Ç¶}µo¤H­û¦³¥i¯à±q³oºØ¤èªk¤¤¨ü¯q¡A¦Ó¨t²ÎºÞ²z­û©Î¶°¸s¾Þ§@¤H­û«h¥i¯à·P¨ì¥¢±æ¡C
Dockerªº¤U¤@­Ó³Ì¤jªºÅܤƬO¡GDocker¦p¤µµL³B¤£¦b¡CDocker for Desktop¤w¸g«Ü¦n¦a¶°¦¨¦b¤FÄ«ªG©M·L³n¤½¥qªº¾Þ§@¨t²Î¤¤¡C¥¦¦V¥Î¤áÁôÂäF©³¼hµêÀÀ¾÷ªº¤u§@¾÷¨î¡A¦b¤j¦h¼Æ±¡ªp¤U¡A³o¬O¤@¶µ¦¨¥\ªºÁ|±¹¡C¦bmacOS¾Þ§@¨t²Î¤¤¡A¥Î¤áÅéÅç«D±`¬yºZ¡F¦Ó¦bWindows¾Þ§@¨t²Î¤¤¡A¦Ü¤Ö¦b¬Y¨Ç®É¨è¤]¹B¦æ¨}¦n¡CWindows¥Î¤á»Ý­n³B²z¨Ó¦Û¤½¥q¨¾¤õùÙ¡B¿E¶iªº¨¾¯f¬r°t¸m¡Bshellµ{§Ç¿ï¶µ©M³q¹L¦n´X¼hºôµ¸¶i¦æ¶¡±µ³X°Ýªº¤j¶q°t¸mªºÅܤơA¦Ó³o¨ÇÅܤƨϱo¦bWindows¾Þ§@¨t²Î¤¤¥æ¥I®Ñ­±ªº°t¸m¤º®eÅܱo²§±`§xÃø¡A¾É­P³o¼Ë°µªº¥ô¦ó¹Á¸Õ³£·|¦b¹ê»Ú¶i¤J¥Í²£¨t²Î¤§«e³Q²^¨O¡C¦]¦¹¡A§Ú­Ì¦A¦¸±N¡mDocker¹ê¾Ô(²Ä2ª©)¡nªº»yªk©M¨t²Î¬ÛÃö§÷®Æ­­©w¬°°w¹ïLinux©MmacOS¾Þ§@¨t²Î¡CŪªÌ¥i¯àµo²{©Ò¦³¥Ü¨Ò¹ê»Ú¤W¯à°÷¦b³o¨ÇÀô¹Ò¤¤¹B¦æ¡A¦ý§Ú­Ì¤£¯à«OÃÒ¥¦­ÌªÖ©w¯à°÷¹B¦æ©ÎªÌ¥i¥H¦X²z¦a«ü¾É¬G»Ù±Æ°£¤u§@¡C
¦Z¨Ó¡AÀò±o¦w¸Ë¤FDockerªº¥i³s±µInternetªºµêÀÀ¾÷Åܱo·L¤£¨¬¹D¤F¡A¨C­Ó¥D¬yªº¬Æ¦Ü¤p«¬ªº¤ªªA°È´£¨Ñ°Ó³£´£¨Ñ³o¨ÇªA°È¡C¦]¦¹¡A§Ú­Ì§R°£¤F»PDocker¾÷¾¹©M¦w¸ËDocker¦³Ãöªº§÷®Æ¡C¬Û«HŪªÌ§¹¥þ¯à°÷§ä¨ì³Ì¾A¦X¦Û¤v¥­»OªºDocker¦w¸Ë»¡©ú¡C¦p¤µ¡AŪªÌ¥i¥Hª½±µ¿ï¾Ü¤@ºØ®e¾¹Àu¥ýªº¤ª¥­»O¡A¦pAWS ECS¡C¡mDocker¹ê¾Ô(²Ä2ª©)¡n¤£·|¤¶²Ð³o¨Ç¥­»O¡A¦]¬°¥¦­Ì³£«D±`¿W¯S¡AÃø¥H¦b¡mDocker¹ê¾Ô(²Ä2ª©)¡n¤¤¸Ô²Ó°Q½×¡C¤£¹L³o¨Ç¥­»O³£¦³§¹µ½ªº¤è®×©M¤åÀÉ¡AŪªÌ¥i¥H¦Û¦æ·j¯Á¬ÛÃö¸ê®Æ¡C
³Ì¦Z¡A®e¾¹©Mºôµ¸³£¾Ö¦³´_Âøªº¾ú¥v¡C¦b¹L¥h´X¦~¨½¡AÀHµÛªA°Èºô®æ¥­»O©M¨ä¥L¸É¥R§Þ³N¬ðµM¥X²{¡A®e¾¹©Mºôµ¸¤§¶¡ªº¥æ¤¬Åܱo§ó´_Âø¤F¡CªA°Èºô®æ¬O¥i·Pª¾À³¥Îµ{§Çªº´¼¯àºÞ¹Dªº¥­»O¡A¥i´£¨Ñ·LªA°Èºôµ¸³Ì¨Î¹ê½î¡A¥¦­Ì¨Ï¥Î¥N²z¨Ó´£¨ÑÂI¹ïÂI¥[±K¡B¨­¥÷ÅçÃÒ¡B±ÂÅv¡BÂ_¸ô¾¹©M°ª¯Å½Ð¨D¸ô¥Ñ§Þ³N¡C¡mDocker¹ê¾Ô(²Ä2ª©)¡n¤¶²Ðªº®e¾¹ºôµ¸°ò¦ª¾ÃѳQÃÒ©ú¹ï²z¸Ñ©Mµû¦ôªA°Èºô®æ§Þ³N«Ü¦³¥Î¡C
¡mDocker¹ê¾Ô(²Ä2ª©)¡n¦®¦b²`¤J¤¶²ÐDockerªº°ò¦ª¾ÃÑ¡CŪªÌ¥i¯àµLªk¦b¤é±`À³¥Î³o¶µ§Þ³Nªº¹Lµ{¤¤¾Ç¨ì©Ò¦³»Ý­nªºª¾ÃÑ¡A¦ý¬O¥u­n´x´¤¡mDocker¹ê¾Ô(²Ä2ª©)¡n¤¶²Ðªº°ò¦ª¾ÃÑ©M§Þ¯à¡A´N¥i¥H§ó§Ö¦a¾Ç²ß°ª¯Å¥DÃD¦}°l¨D§ó°ªªº¥Ø¼Ð¡C¯¬§A¦b±´¯Á®e¾¹ªº©ºµ{¤¤¤@¸ô¶¶­·¡I
¤º®e²¤¶¡G

¡m Docker¹ê¾Ô(²Ä2ª©)¡n»EµJ¤_³Ð«Ø¡B³¡¸p©MºÞ²z¹B¦æ¦bLinux¾Þ§@¨t²Î¤WªºDocker®e¾¹¤¤ªºÀ³¥Îµ{§Ç¡C¥»®Ñ¹ï¤º®e°µ¤F¥þ­±§ó·s¡A·s¼W¤F4³¹¡A­×­q¤F§ó¨Î¹ê½î©M¥Ü¨Ò¡C®Ñ¤¤­º¥ý¹ïDocker¼Ò«¬°µ¤F²M´·¸ÑÄÀ,µM¦Z¶}©l¥´¥]À³¥Îµ{§Ç,¦w¥þ¦a´ú¸Õ¡B¦w¸Ë©M¹B¦æÀ³¥Îµ{§Ç¡A¦}±N¥¦­Ì³¡¸p¨ì¥D¾÷¶°¸s¤¤¡C¥»®Ñ³q¹L¥Ü¨Ò®i¥Ü¤FDocker¦p¦ó¨Ï¾ã­Ó¶}µo¥Í©R©P´Á¨ü¯q¡AŪªÌ±N¾Ç¨ì±q¶}µo¡B´ú¸Õ¾÷¾¹¨ì¶i¦æ¥þ­±¤ª³¡¸pªº¦UºØ§Þ³N¡C
¥D­n¤º®e
¦b®e¾¹¤¤¹B¦æ³n¥ó
¬°§ó¦n¦a³¡¸p¦Ó¥´¥]³n¥ó
¦w¥þ©M¤Àµo®e¾¹¤ÆÀ³¥Îµ{§Ç
¥Ø¿ý¡G

²Ä1³¹Åwªï¨Ó¨ìDockerªº¥@¬É1
1.1Docker¬O¤°¤\2
1.1.1¡§hello¡Aworld¡¨¥Ü¨Ò3
1.1.2®e¾¹4
1.1.3®e¾¹¤£¬OµêÀÀ¤Æ5
1.1.4¦b¹jÂ÷®e¾¹¤¤¹B¦æ³n¥ó5
1.1.5¤Àµo®e¾¹7
1.2Docker¸Ñ¨M¤F¤°¤\°ÝÃD7
1.2.1Åܱo¦³²Õ´©Ê8
1.2.2§ïµ½¥i²¾´Ó©Ê9
1.2.3«OÅ@§Aªº­pºâ¾÷10
1.3Docker¬°¤°¤\­«­n11
1.4¦ó®É¡B¦ó¦a¨Ï¥ÎDocker12
1.5§ó¤j¥ÍºA¨t²Î¤¤ªºDocker13
1.6±qDocker©R¥O¦æÀò¨úÀ°§U14
1.7¥»³¹¤pµ²14
²Ä¢¹³¡¤À¶iµ{¹jÂ÷»PÀô¹Ò¿W¥ß­pºâ
²Ä2³¹¦b®e¾¹¤¤¹B¦æ³n¥ó19
2.1±±¨î®e¾¹¡Gºc«Øºô¯¸ºÊµø¾¹19
2.1.1³Ð«Ø©M±Ò°Ê·s®e¾¹20
2.1.2¹B¦æ¥æ¤¬¦¡®e¾¹22
2.1.3ù¦C¡B°±¤î¡B­«±Ò©M¬d¬Ý®e¾¹ªº¿é¥X23
2.2³Q¸Ñ¨Mªº°ÝÃD©MPID©R¦WªÅ¶¡25
2.3®ø°£¤¸¼Æ¾Ú¨R¬ð¡G«Ø¥ßºô¯¸¹A³õ28
2.3.1ÆF¬¡ªº®e¾¹ÃѧO29
2.3.2®e¾¹ªºª¬ºA©M¨Ì¦sÃö¨t32
2.4ºc«Ø»PÀô¹ÒµLÃöªº¨t²Î35
2.4.1¥uŪ¤å¥ó¨t²Î35
2.4.2ª`¤JÀô¹ÒÅܶq39
2.5«Ø¥ß«ù¤[ªº®e¾¹42
2.5.1¦Û°Ê­«±Ò®e¾¹43
2.5.2¨Ï¥ÎPID1©Minit¨t²Î44
2.6²M°£¤u§@46
2.7¥»³¹¤pµ²48
²Ä3³¹¨Ï¥ÎDocker¦w¸Ë³n¥ó49
3.1ÃѧO³n¥ó50
3.1.1©R¦W­Ü®w¬O¤°¤\50
3.1.2¨Ï¥Î¼Ðñ51
3.2´M§ä©M¦w¸Ë³n¥ó52
3.2.1±q©R¥O¦æ¨Ï¥ÎDockerª`¥Uªí52
3.2.2¨Ï¥Î³Æ¥Îªºª`¥Uªí53
3.2.3±NÃè¹³§@¬°¤å¥ó³B²z54
3.2.4±qDockerfile¶i¦æ¦w¸Ë55
3.2.5¨Ï¥ÎDockerHub56
3.3¦w¸Ë¤å¥ó©M¹jÂ÷58
3.3.1¹ê»ÚªºÃè¹³¼h¯Å58
3.3.2¼h¯ÅªºÃö¨t60
3.3.3®e¾¹¤å¥ó¨t²Îªº©â¶H©M¹jÂ÷61
3.3.4³o¤@¤u¨ã¶°©MÁp¦X¤å¥ó¨t²Îµ²ºcªºÀuÂI62
3.3.5Áp¦X¤å¥ó¨t²Îªº¯ÊÂI62
3.4¥»³¹¤pµ²63
²Ä4³¹¨Ï¥Î¦sÀx©M¨÷65
4.1¤å¥ó¾ð©M±¾¸üÂI66
4.2¸j©w±¾¸ü67
4.3±`¾n¤º¦s¦sÀx70
4.4Docker¨÷71
4.4.1¨÷´£¨Ñ®e¾¹µLÃöªº¼Æ¾ÚºÞ²z73
4.4.2¦bNoSQL¼Æ¾Ú®w¤¤¨Ï¥Î¨÷74
4.5¦@¨É±¾¸üÂI©M¦@¨É¤å¥ó77
4.6²M²z¨÷81
4.7¨Ï¥Î¨÷´¡¥óªº°ª¯Å¦sÀx83
4.8¥»³¹¤pµ²83
²Ä5³¹³æ¥D¾÷ºôµ¸85
5.1ºôµ¸­I´º(­±¦Vªì¾ÇªÌ)85
5.1.1°ò¥»ª¾ÃÑ¡G¨óij¡B±µ¤f©MºÝ¤f86
5.1.2²`¤Jª¾ÃÑ¡Gºôµ¸¡BNAT©MºÝ¤fÂàµo87
5.2Docker®e¾¹ºôµ¸88
5.2.1³Ð«Ø¥Î¤á¦Û©w¸qªº¾ô±µºôµ¸89
5.2.2±´¯Á¾ô±µºôµ¸91
5.2.3§ó¦hºôµ¸Ãþ«¬94
5.3¯S®í®e¾¹ºôµ¸¡G¥D¾÷ºôµ¸©Mnoneºôµ¸95
5.4¨Ï¥ÎNodePortpublishing³B²z¤J¯¸¬y¶q96
5.5®e¾¹ºôµ¸ª`·N¨Æ¶µ©M©w¨î¤Æ98
5.5.1¨S¦³¨¾¤õù٩κôµ¸µ¦²¤98
5.5.2¦Û©w¸qDNS°t¸m99
5.5.3¥~³¡¤Æºôµ¸ºÞ²z103
5.6¥»³¹¤pµ²104
²Ä6³¹³q¹L¸ê·½±±¨î¨Ó­­¨î­·ÀI105
6.1³]¸m¸ê·½°tÃB106
6.1.1¤º¦s­­¨î106
6.1.2CPU108
6.1.3³X°Ý³]³Æ111
6.2¦@¨É¤º¦s111
6.3²z¸Ñ¥Î¤á114
6.3.1¨Ï¥Î¹B¦æ®É¥Î¤á114
6.3.2¥Î¤á©M¨÷117
6.3.3¥Î¤á©R¦WªÅ¶¡©MUID­«¬M®g119
6.4®Ú¾Ú¥\¯à¶°½Õ¾ã¾Þ§@¨t²Î¥\¯à³X°Ý­S³ò121
6.5¥H§¹¥þ¯SÅv¹B¦æ®e¾¹123
6.6¨Ï¥Î¼W±jªº¤u¨ã¥[©T®e¾¹124
6.7ºc«Ø¾A¦X¥Î¨Òªº®e¾¹126
6.7.1À³¥Îµ{§Ç127
6.7.2°ª¼hªº¨t²ÎªA°È127
6.7.3§C¼hªº¨t²ÎªA°È128
6.8¥»³¹¤pµ²128
²Ä¢º³¡¤À¥´¥]³n¥ó¶i¦æ¤Àµo
²Ä7³¹±N³n¥ó¥´¥]¨ìÃè¹³¤¤133
7.1±q®e¾¹ºc«ØÃè¹³133
7.1.1¥´¥]¡§hello,world¡¨µ{§Ç134
7.1.2·Ç³Æ¥´¥]Gitµ{§Ç135
7.1.3¬d¬Ý¤å¥ó¨t²Îªº§ó§ï¶µ136
7.1.4´£¥æ·sªºÃè¹³137
7.1.5°t¸mÃè¹³ÄÝ©Ê138
7.2²`¤J¬ã¨sDockerÃè¹³©M¼h¯Å140
7.2.1±´¯ÁÁp¦X¤å¥ó¨t²Î140
7.2.2­«·s»{ÃÑÃè¹³¡B¼h¯Å¡B­Ü®w©M¼Ðñ143
7.2.3ºÞ²zÃè¹³¤j¤p©M¼h¯Åªº­­¨î146
7.3¾É¥X©M¾É¤J¥­­±¤å¥ó¨t²Î148
7.4ª©¥»±±¨îªº³Ì¨Î¹ê½î151
7.5¥»³¹¤pµ²153
²Ä8³¹¨Ï¥ÎDockerfile¦Û°Êºc«ØÃè¹³155
8.1¨Ï¥ÎDockerfile¥´¥]Gitµ{§Ç155
8.2Dockerfile¤Jªù160
8.2.1¤¸¼Æ¾Ú«ü¥O160
8.2.2¤å¥ó¨t²Î«ü¥O165
8.3¦bºc«Ø¤U´å¼h¯Å®Éª`¤J¦æ¬°169
8.4³Ð«Ø¥iºûÅ@ªºDockerfile172
8.5¨Ï¥Î±Ò°Ê¸}¥»©M¦h¶iµ{®e¾¹177
8.5.1ÅçÃÒ«e´£±ø¥ó177
8.5.2ªì©l¤Æ¶iµ{179
8.5.3°·±dÀˬdªº¥Øªº©M¥Î³~180
8.6ºc«Ø¥[©TªºÀ³¥Îµ{§ÇÃè¹³182
8.6.1¤º®e¥i´M§}Ãè¹³¼ÐÃѲÅ183
8.6.2¥Î¤áÅv­­183
8.6.3SUID©MSGIDÅv­­186
8.7¥»³¹¤pµ²188
²Ä9³¹¤½¦@©M¨p¦³³n¥ó¤Àµo191
9.1¿ï¾Ü¤Àµo¤èªk191
9.1.1Ãè¹³¤ÀµoÀWÃÐ192
9.1.2¿ï¾Ü¼Ð·Ç192
9.2¦b¦«ºÞª`¥Uªí¤¤µo¥¬Ãè¹³195
9.2.1¦bDockerHubªº¤½¦@­Ü®w¤¤µo¥¬Ãè¹³195
9.2.2¨p¦³¦«ºÞ­Ü®w198
9.3¤Þ¤J¨p¦³ª`¥Uªí200
9.3.1¨Ï¥Îª`¥UªíÃè¹³202
9.3.2±qª`¥Uªí¤¤®ø¶OÃè¹³204
9.4¤â°Êµo¥¬©M¤ÀµoÃè¹³205
9.5Ãè¹³·½¥N½X¤Àµo¬yµ{211
9.6¥»³¹¤pµ²213
²Ä10³¹Ãè¹³ºc«ØºÞ¹D215
10.1Ãè¹³ºc«ØºÞ¹Dªº¥Ø¼Ð215
10.2ºc«ØÃè¹³ªº¼Ò¦¡217
10.2.1¦h¦X¤@Ãè¹³217
10.2.2¤ÀÂ÷ºc«Ø®É©M¹B¦æ®ÉÃè¹³218
10.2.3³q¹L¦h¶¥¬qºc«Ø¨Ó§ó§ï¹B¦æ®ÉÃè¹³220
10.3¦bºc«ØÃè¹³®É°O¿ý¤¸¼Æ¾Ú222
10.4¦bÃè¹³ºc«ØºÞ¹D¤¤´ú¸ÕÃè¹³229
10.5¼Ð°OÃè¹³ªº¼Ò¦¡232
10.5.1­I´º232
10.5.2±a¦³°ß¤@¼Ðñªº«ùÄò¥æ¥I233
10.5.3±a¦³¨ãÅéÀô¹Ò¤u¥óªº«ùÄò¥æ¥I233
10.5.4»y¸qª©¥»±±¨î235
10.6¥»³¹¤pµ²236
²Ä¢»³¡¤À§ó°ª¼h¦¸ªº©â¶H»P½s±Æ
²Ä11³¹Docker©MComposeªA°È239
11.1¡§HelloWorld!¡¨ªA°È240
11.1.1¦Û°Ê´_¬¡©M´_¨î242
11.1.2¦Û°Ê±À¥X244
11.1.3ªA°È¹B¦æª¬ªp»P¦^ºu246
11.2¨Ï¥ÎComposeV3ªºÁn©ú¦¡ªA°ÈÀô¹Ò249
11.2.1YAML¤Jªù251
11.2.2ComposeV3ªºªA°È¶°¦X253
11.3±a¦³ª¬ºAªºªA°È©M«O¯dªº¼Æ¾Ú258
11.4¨Ï¥ÎCompose¶i¦æ­t¸ü§¡¿Å¡BªA°Èµo²{©MÁpºô260
11.5¥»³¹¤pµ²264
²Ä12³¹¤@¬yªº°t¸m265
12.1°t¸mªº¤Àµo©MºÞ²z266
12.2¤ÀÂ÷À³¥Îµ{§Ç©M°t¸m267
12.2.1¨Ï¥Î°t¸m¸ê·½270
12.2.2³¡¸pÀ³¥Îµ{§Ç271
12.2.3ª½±µºÞ²z°t¸m¸ê·½273
12.3¤@ºØ¯S®íªº°t¸m¡G¾÷±K«H®§277
12.4¥»³¹¤pµ²285
²Ä13³¹¨Ï¥ÎSwarm¦bDocker¥D¾÷¶°¸s¤W½s±ÆªA°È287
13.1¨Ï¥ÎDockerSwarm¶°¸s287
13.1.1DockerSwarm¼Ò¦¡¤¶²Ð288
13.1.2³¡¸pSwarm¶°¸s289
13.2±NÀ³¥Îµ{§Ç³¡¸p¨ìSwarm¶°¸s290
13.2.1DockerSwarm¶°¸s¸ê·½Ãþ«¬¤¶²Ð290
13.2.2¨Ï¥ÎDockerªA°È©w¸qÀ³¥Îµ{§Ç¤Î¨ä¨Ì¿à¶µ291
13.2.3³¡¸pÀ³¥Îµ{§Ç297
13.3»PSwarm¶°¸s¤º¹B¦æªºªA°È³q«H303
13.3.1¨Ï¥ÎSwarm¸ô¥Ñºô®æ±N«È¤áºÝ½Ð¨D¸ô¥Ñ¨ìªA°È304
13.3.2¨Ï¥ÎÂл\ºôµ¸306
13.3.3¦bÂл\ºôµ¸¤Wµo²{ªA°È307
13.3.4¦bÂл\ºôµ¸¤W¹jÂ÷ªA°È¤§¶¡ªº³q«H310
13.3.5­t¸ü§¡¿Å312
13.4±NªA°È¥ô°È©ñ¸m¦b¶°¸s¤¤313
13.4.1´_¨îªA°È314
13.4.2¬ù§ô¥ô°Èªº¹B¦æ¦ì¸m318
13.4.3¨Ï¥Î¥þ§½ªA°È¤è¦¡¦b¨C­Ó¸`ÂI¤W³¡¸p¤@­Ó¥ô°È325
13.4.4±N¯u¹êªºÀ³¥Îµ{§Ç³¡¸p¨ì¯u¹êªº¶°¸s¤¤326
13.5¥»³¹¤pµ²327
§Ç¡G