<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          什么是 docker?

          共 1615字,需瀏覽 4分鐘

           ·

          2020-02-09 23:25

          來源:互聯(lián)網(wǎng)偵察

          作者:channingbreeze




          829dd2b10b31088563b1bf07c941c336.webp


          話說小史已經(jīng)接受了A廠的offer,這不,已經(jīng)在公司附近租好了房子,準(zhǔn)備搬家過去住了。


          家里的東西真是多呀,小史的很多家具都是組裝起來的,現(xiàn)在都已經(jīng)拆散放到呂老師的車上了。


          就這樣,呂老師開車帶著小史一起去了公司附近的新住址。


          開了一個多小時,終于到了新住址。一進房間,小史就忙著把心愛的電腦桌拼起來。


          但是電腦桌拆起來快,裝起來可不好裝,幾十個組件,一百多個螺絲釘,小史裝了一下午,最后還發(fā)現(xiàn)少了幾個螺絲釘。


          e09ddf46a16bc8a0ae59b24b70bc1b00.webp


          【晚飯】


          晚上,小史和呂老師一起吃飯。


          6aaf8d25da26d9848f8f02502c9b58d7.webp

          8e19fbee37c68b72c30fd3e7d70cd7b2.webp

          1a9747b06a435cde177fecfe5d474207.webp

          b5c2f8ea90da9e6717199c768d03dffd.webp

          54d7eeef4a201ebbe1fe193480e3215a.webp

          0a176ca0fce918045440e444599eb596.webp


          【呂老師前傳】


          呂老師以前還是程序員的時候,在B廠上班,有一次一個新項目要發(fā)布上線。結(jié)果測試環(huán)境跑得好好的,生產(chǎn)環(huán)境死活跑不起來。


          8856b53122ad82dfc551371b85b6c4fa.webp


          【docker有啥好】


          1b059084c651174f5bc46da0e8666c4d.webp

          小史:docker我用過,不過當(dāng)時是因為視頻教程里用的docker部署的環(huán)境,所以我也就跟著做了,其實反而覺得更麻煩了,它到底哪里好呢?

          d204d8e736b0f35ba9ea14f318ee6e13.webp

          83446887d203a21f22254d8db98f5eb5.webp

          596aa698bc2a6b1b86195a0a03162ee6.webp

          60bee2e1fa9faa326a42a6892fba2c27.webp

          3089ed9dc4741d0398946cfab6fdbb01.webp

          78c2c0449f5c5cf8a6d56bdef876a35e.webp

          0a0e8665ec61af8230ff07052551f22e.webp

          185f5d4f6fa9b9912c213f9f6051d1e4.webp

          6436f55c59eacd6ef08bbe6a14a7a0e3.webp

          呂老師:這方面docker做了很多事情,比如提供了基礎(chǔ)鏡像的方式,docker官方的鏡像倉庫里有很多鏡像,可以直接拉下來用,然后新的鏡像可以以它們?yōu)榛A(chǔ),在上面commit新的東西。

          624a0b33ff8d2ea897f575f98c303990.webp

          04b2072daabf07731de885a8e81b8f17.webp

          呂老師:同時,docker使用了鏡像分層的技術(shù),新的commit會產(chǎn)生新的層,可以復(fù)用一部分老的層。這樣一來制作新鏡像的速度還是挺快的。

          4792dc804ea43cf72aa6a900661ab4bf.webp

          e57b50ed0358a2ceebb304be5dfa0798.webp

          小史:我明白你的意思,這樣確實制作鏡像的時候可以加快速度,但是假如我要把整個環(huán)境放到另外一個機器部署,還是要拷貝整個大的鏡像過去吧?

          d513663297e38c2e82e20d17bd994ae2.webp


          【dockerfile】


          6f33172d300b0ee01d5f2910f121ef6e.webp

          呂老師:你說的對,電腦桌不拆,直接放我車上放不下,那么能不能這樣,我們拆的時候,就把哪個螺絲在哪里這些細(xì)節(jié)記錄好,到時候裝的時候只要按照記錄順序安裝就好。

          c7e23b4904bf4370f1140ecc958db4c1.webp

          2203ff46432888cfc68ef221896b9a9f.webp

          a884b2d413df35c27840138a6e86d70e.webp

          248204a5b66c7e4b6ae975f01f2aa270.webp

          b2fdd706d461baa29a96109494df7565.webp

          2e8b13f9149e2b963d1664a440afdb35.webp

          851bc2ad76b14de4f5d357936c838cd7.webp

          呂老師:你看,就這個簡單的文件。第一行它告訴你這個鏡像基于ubuntu基礎(chǔ)鏡像,第二行告訴你這個鏡像的維護者的信息,第三行的RUN就是要執(zhí)行的shell命令,比如這里,是在ubuntu的基礎(chǔ)鏡像上安裝一些額外的東西,第4行是鏡像啟動之后執(zhí)行的初始命令。

          4b17bcf874c4b0c848a185578c674a26.webp

          b440b4706f9578c80923db97a012ecea.webp

          56bd4e921e98a8ebc50b2ab75823bdb8.webp


          【docker最佳實踐】


          533cc428d816308a82444abeda149648.webp

          bc2bc92839cd5c520565b3b5eb7b833d.webp

          c7da385c320dba937f77bb86ca756ebf.webp

          372ba9c62beff58102521082d69dd814.webp

          b0e3e78111d727ca06ff0316af3e3726.webp

          d662b0fcc7c4e139094a717d744399b7.webp

          0e0ff9c05f21d99f26082b3cc96c8e38.webp

          c879a840c850eeb98025b66fa75a3050.webp

          f8716c63177c4862f5cee8dd23c93c6f.webp

          呂老師:其實在網(wǎng)絡(luò)好的情況下,下載一個鏡像一般來說比重新打一個鏡像更快,所以最終部署都是基于鏡像去部署,不會重新打鏡像了。

          edea2781540c2943a39eed5bc59f41a7.webp

          2a1238288dcd1e2d5bc28dcf46a6c7ca.webp

          e183aec23f61a76625cb8c8b3ebe6eac.webp


          【docker關(guān)鍵概念】


          929e5383d854d065431246b3d2e5aafa.webp

          a38d7aeae744eaa44d8348c57cfe65a9.webp

          dde3f60908d7b807e8d11fb62e294ff9.webp

          a64f4a9356c33bbdf8cf8cda50c19bbb.webp

          957f9ffdeb56441ac5c6dcd283d6dbda.webp

          呂老師:你說的沒錯,其實鏡像有點像代碼,容器有點像進程。代碼是存放在硬盤上的東西,而把代碼運行起來,就會形成一個進程,進程才是跑起來的程序。

          e661afe5f9dfa77b269028636cc27953.webp

          小史:對,你這個比喻真是貼切,鏡像和容器也是一樣,鏡像是存在硬盤上的東西,鏡像運行起來,就形成一個容器,容器才是真正跑起來的程序。只不過在docker中,我們可以進入容器,做一些操作,然后再把容器中的改動提交形成一個新的鏡像。

          3bd5c32c614408505f73552a0714e7a3.webp

          a8179578b81adc316bf792018d640877.webp

          小史:如果說鏡像是代碼的話,鏡像倉庫就有點像github了,我們寫好的代碼會提交到github上面進行保存和管理,方便在其他地方也能下載代碼。鏡像倉庫也是類似的,制作好的鏡像,就把它放到鏡像倉庫,方便其他人直接用鏡像部署。

          6e4885ccd46b91cac9ad013d75a85231.webp


          【筆記】


          聊天結(jié)束后,小史悄悄在手機中記錄下了這次的筆記。


          一、容器技術(shù)docker的思考方式是,將環(huán)境一起打包鏡像,避免部署時的環(huán)境問題。

          二、dockerfile記錄鏡像的制作步驟

          三、鏡像、容器、倉庫的概念可以類比代碼、進程、github


          【飯后】


          吃完晚飯,小史和呂老師走在大街上,望著天上的星空。


          f777af065ff9b34ead0e6d9ec1ffb5a9.webp

          2eb5a57e8814ec16dfa9e9d3d68c0ef5.webp

          861642d19be20c818ea1af1516e0fcac.webp

          cc23fceba20c401898c12742ca1a7c60.webp

          5ef272892c0ce273c9e5a3101bc7a697.webp



          我整理了幾百本CS相關(guān)的電子書,全部都放在了這個Github:https://github.com/iamshuaidi/CS-Book(點擊閱讀原文直達(dá),電腦打開更佳)

          推薦閱讀

          全部文章分類與整理(算法+數(shù)據(jù)結(jié)構(gòu)+計算機基礎(chǔ)),持續(xù)更新

          【吐血整理】那些讓你起飛的計算機基礎(chǔ)知識:學(xué)什么,怎么學(xué)?

          普普通通,我的三年大學(xué)

          寫公眾號15個月以來,這一路上的學(xué)習(xí)與收獲

          歷經(jīng)兩個月,我的秋招之路結(jié)束了!

          2020 第一篇原創(chuàng) | 我是如何讓自己變的更加優(yōu)秀的?


          瀏覽 66
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  豆花视频AⅤ一区二区三区 | 毛片动态图 | 欧美性爱XXXX黑人XYX性爽 | 欧美成人性片 | 91视频精品 |