「走進(jìn)k8s」Docker 簡(jiǎn)介和安裝(一)

關(guān)于docker這塊從0開始已經(jīng)寫了4個(gè)系列了潮峦,但是針對(duì)k8s還是有點(diǎn)怵入偷,因?yàn)閗8s確實(shí)比較麻煩里面的東西比較復(fù)雜嘹屯,而且針對(duì)k8s想走的更遠(yuǎn)還是需要實(shí)踐印荔,前端時(shí)間將原來的java的一些知識(shí)回顧和學(xué)習(xí)了低葫,這次又要開啟k8s之旅了,加油吧老鐵們仍律!還是繼續(xù)從docker開始嘿悬,不斷的反復(fù),不斷的學(xué)習(xí)水泉,才能讓知識(shí)記憶的更老善涨。艾賓浩斯記憶法就是這樣說的。

(一)什么是docker

Docker的英文翻譯是【碼頭工人】的意思草则,不是咱們初中還是高中學(xué)的課文的【伏爾加河上的纖夫】钢拧,負(fù)責(zé)搬運(yùn)碼頭貨物的,隨著科技的發(fā)展碼頭上體力搬運(yùn)工越來越少炕横,多數(shù)是操作碼頭集裝箱的碼頭工人源内。對(duì)于集裝箱是一種容器,直接理解成彌勒佛的布口袋什么都可以放份殿。杯子可以存水姿锭,筆筒可以放筆塔鳍,酒瓶可以盛酒,書包可以裝書呻此,相機(jī)可以存照片,電腦可以放小電影腔寡。

  1. 不同的應(yīng)用程序可能會(huì)有不同的應(yīng)用環(huán)境焚鲜,比如.net開發(fā)的網(wǎng)站和java開發(fā)的網(wǎng)站依賴的軟件就不一樣,如果把他們依賴的軟件都安裝在一個(gè)服務(wù)器上就要調(diào)試很久放前,而且很麻煩忿磅,還會(huì)造成一些沖突。比如IIS和tomcat訪問端口沖突凭语。這個(gè)時(shí)候你就要隔離.net開發(fā)的網(wǎng)站和tomcat開發(fā)的網(wǎng)站葱她。常規(guī)來講,我們可以在服務(wù)器上創(chuàng)建不同的虛擬機(jī)在不同的虛擬機(jī)上放置不同的應(yīng)用似扔,但是虛擬機(jī)開銷比較高吨些。docker可以實(shí)現(xiàn)虛擬機(jī)隔離應(yīng)用環(huán)境的功能,并且開銷比虛擬機(jī)小炒辉,小就意味著省錢了豪墅。
  2. 你開發(fā)軟件的時(shí)候用的是Ubuntu,但是運(yùn)維管理的都是centos黔寇,運(yùn)維在把你的軟件從開發(fā)環(huán)境轉(zhuǎn)移到生產(chǎn)環(huán)境的時(shí)候就會(huì)遇到一些Ubuntu轉(zhuǎn)centos的問題偶器,比如:有個(gè)特殊版本的數(shù)據(jù)庫(kù),只有Ubuntu支持缝裤,centos不支持屏轰,在轉(zhuǎn)移的過程當(dāng)中運(yùn)維就得想辦法解決這樣的問題。這時(shí)候要是有docker你就可以把開發(fā)環(huán)境直接封裝轉(zhuǎn)移給運(yùn)維憋飞,運(yùn)維直接部署你給他的docker就可以了霎苗。而且部署速度快。
  3. 在服務(wù)器負(fù)載方面搀崭,如果你單獨(dú)開一個(gè)虛擬機(jī)叨粘,那么虛擬機(jī)會(huì)占用空閑內(nèi)存的,docker部署的話瘤睹,這些內(nèi)存就會(huì)利用起來升敲。

(二)docker格言

Java號(hào)稱【一次編譯,到處運(yùn)行】轰传,因?yàn)閖ava虛擬機(jī)解決平臺(tái)的兼容性問題驴党,所以有java虛擬機(jī)的地方就能跑java代碼;
Docker是:【一次封裝获茬,到處運(yùn)行】港庄,因?yàn)閐ocker決絕了應(yīng)用環(huán)境的問題倔既,安裝了docker的平臺(tái)就能跑【docker包】,這樣就決絕了【開發(fā)環(huán)境能跑鹏氧,一上線就崩】的尷尬渤涌。

(三)docker和虛擬機(jī)的區(qū)別

vm與docker框架,直觀上來講vm多了一層guest OS把还,同時(shí)Hypervisor會(huì)對(duì)硬件資源進(jìn)行虛擬化实蓬,docker直接使用硬件資源,所以資源利用率相對(duì)docker低也是比較容易理解的吊履。

  1. 隔斷這招就是虛擬機(jī)(VM)的思路了安皱,虛擬機(jī)的這種隔斷你可以理解成比較決絕的隔斷,墻上自己掏洞開個(gè)門開個(gè)窗艇炎,廚房衛(wèi)生間我在自己的這個(gè)隔斷里都單獨(dú)來一套酌伊,基本就是一個(gè)完整的家裝工程了,你進(jìn)這個(gè)隔斷感覺——喔缀踪,這就是個(gè)完整的房子嘛居砖。 所以虛擬機(jī)的好處壞處也你也就明白了:隔離效果好,但是損耗大辜贵。
  2. docker悯蝉,不僅能做資源隔離,人家還規(guī)范化系統(tǒng)化了(repo/image)托慨,所有房間(container)統(tǒng)一裝修和家具鼻由,你交錢簽約就能享受一個(gè)相對(duì)獨(dú)立的生活環(huán)境(environment)了,你自己的東西在你屋子里隨便擺厚棵,都可以的蕉世;對(duì)中介來說,你當(dāng)下不過就是個(gè)正在running的instance婆硬,的當(dāng)你gameover了以后狠轻,這個(gè)房間他還可以以很小的代價(jià)租給別人run,是不是效率好高了彬犯?

(四)為啥要用容器

隨著硬件的性能提升向楼,以及軟件種類的豐富,有兩種情況變得很常見

  1. 硬件性能過市城——很多計(jì)算機(jī)的硬件配置湖蜕,即使不能完全滿足峰值性能的要求,也往往會(huì)有大量時(shí)間處于硬件資源閑置的狀態(tài)宋列。例如一般家用電腦昭抒,已經(jīng)是四核、六核的配置了,除了3A游戲灭返、視頻制作盗迟、3D渲染鲜锚、高性能計(jì)算等特殊應(yīng)用外厌漂,通常有90%以上時(shí)間CPU是閑置的。
  2. 軟件沖突——因?yàn)闃I(yè)務(wù)需要盾碗,兩個(gè)或者多個(gè)軟件之間沖突怎静,或者需要同一個(gè)軟件的不同版本怕磨。例如早幾年做web前端的,要測(cè)試網(wǎng)頁(yè)在不同版本的IE上是否能正常顯示消约,然而Windows只能裝一個(gè)版本的IE。
  3. 開發(fā)環(huán)境能跑员帮,一上線就崩或粮。環(huán)境不一致。

(五)Docker Engine

  1. 常駐后臺(tái)進(jìn)程Dockerd
  2. 一個(gè)用來和 Dockerd 交互的 REST API Server
  3. 命令行CLI接口捞高,通過和 REST API 進(jìn)行交互(我們經(jīng)常使用的 docker 命令)

??

(六)Docker 架構(gòu)

  1. container: 容器氯材,是指image的運(yùn)行時(shí),包含了文件資源(image展開)和系統(tǒng)資源(變成process存在于系統(tǒng)中)硝岗。
  2. image: 鏡像氢哮,是指將應(yīng)用打包好之后的存儲(chǔ)方式,一個(gè)image包含多層layer型檀。
  3. layer: 在Dockerfile中每一步都會(huì)產(chǎn)生一層layer冗尤,每一步的結(jié)果產(chǎn)出變成文件。
  4. dockerfile: 一種構(gòu)建image的文件的DSL胀溺。
  5. docker: 可以通過Dockerfile構(gòu)建image裂七,也可以將image運(yùn)行,使其變成container仓坞。
  6. moby: docker項(xiàng)目的新名字背零,docker公司的一步棋。
  7. docker-compose: Python寫的一個(gè)docker編排工具无埃。
  8. docker swarm: docker公司推出的容器調(diào)度平臺(tái)徙瓶。
  9. kubernetes: google主導(dǎo)的容器調(diào)度平臺(tái)。

(七)Docker 安裝

這里不在描述windows嫉称,mac了侦镇。只要說說如何快速簡(jiǎn)單的在centos系統(tǒng)上安裝。

  • ①修改dns解析地址
vi /etc/resolv.conf
#nameserver 8.8.8.8 

# 或者直接通過這個(gè)命令 echo nameserver 8.8.8.8 >> /etc/resolv.conf 
systemctl restart network
  • ② docker在線安裝
sudo curl -sSL https://get.docker.com/ | sh
  • ③ docker 加速器
sudo curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://b81aace9.m.daocloud.io
sudo systemctl restart docker
  • ⑤ 安裝配合工具
sudo yum -y install epel-release
sudo yum -y install python-pip
sudo yum clean all
  • ⑤ 安裝docker-compose
sudo pip install docker-compose
  • ⑥ 安裝完畢
docker-compose version
docker version

PS:docker已經(jīng)安裝成功了澎埠。之前寫的文章太官方了虽缕,現(xiàn)在要讓更通俗,很易懂的方式讓更多人了解和使用docker。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末氮趋,一起剝皮案震驚了整個(gè)濱河市伍派,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌剩胁,老刑警劉巖诉植,帶你破解...
    沈念sama閱讀 221,273評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異昵观,居然都是意外死亡晾腔,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,349評(píng)論 3 398
  • 文/潘曉璐 我一進(jìn)店門啊犬,熙熙樓的掌柜王于貴愁眉苦臉地迎上來灼擂,“玉大人,你說我怎么就攤上這事觉至√抻Γ” “怎么了?”我有些...
    開封第一講書人閱讀 167,709評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵语御,是天一觀的道長(zhǎng)峻贮。 經(jīng)常有香客問我,道長(zhǎng)应闯,這世上最難降的妖魔是什么纤控? 我笑而不...
    開封第一講書人閱讀 59,520評(píng)論 1 296
  • 正文 為了忘掉前任,我火速辦了婚禮碉纺,結(jié)果婚禮上船万,老公的妹妹穿的比我還像新娘。我一直安慰自己惜辑,他們只是感情好唬涧,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,515評(píng)論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著盛撑,像睡著了一般碎节。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上抵卫,一...
    開封第一講書人閱讀 52,158評(píng)論 1 308
  • 那天狮荔,我揣著相機(jī)與錄音,去河邊找鬼介粘。 笑死殖氏,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的姻采。 我是一名探鬼主播雅采,決...
    沈念sama閱讀 40,755評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了婚瓜?” 一聲冷哼從身側(cè)響起宝鼓,我...
    開封第一講書人閱讀 39,660評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎巴刻,沒想到半個(gè)月后愚铡,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,203評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡胡陪,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,287評(píng)論 3 340
  • 正文 我和宋清朗相戀三年沥寥,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片柠座。...
    茶點(diǎn)故事閱讀 40,427評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡邑雅,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出妈经,到底是詐尸還是另有隱情蒂阱,我是刑警寧澤,帶...
    沈念sama閱讀 36,122評(píng)論 5 349
  • 正文 年R本政府宣布狂塘,位于F島的核電站,受9級(jí)特大地震影響鳄厌,放射性物質(zhì)發(fā)生泄漏荞胡。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,801評(píng)論 3 333
  • 文/蒙蒙 一了嚎、第九天 我趴在偏房一處隱蔽的房頂上張望泪漂。 院中可真熱鬧,春花似錦歪泳、人聲如沸萝勤。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,272評(píng)論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽敌卓。三九已至,卻和暖如春伶氢,著一層夾襖步出監(jiān)牢的瞬間趟径,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,393評(píng)論 1 272
  • 我被黑心中介騙來泰國(guó)打工癣防, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留蜗巧,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,808評(píng)論 3 376
  • 正文 我出身青樓蕾盯,卻偏偏與公主長(zhǎng)得像幕屹,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,440評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容