真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

從0開(kāi)始了解Docker入門(mén)的方法

小編給大家分享一下從0開(kāi)始了解Docker入門(mén)的方法,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!

江寧網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)建站!從網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開(kāi)發(fā)、APP開(kāi)發(fā)、響應(yīng)式網(wǎng)站設(shè)計(jì)等網(wǎng)站項(xiàng)目制作,到程序開(kāi)發(fā),運(yùn)營(yíng)維護(hù)。創(chuàng)新互聯(lián)建站自2013年創(chuàng)立以來(lái)到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來(lái)保證我們的工作的順利進(jìn)行。專(zhuān)注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)建站。

Docker 自開(kāi)源以來(lái)受到了各大公司的廣泛關(guān)注,或許現(xiàn)在互聯(lián)網(wǎng)公司的運(yùn)維體系不承載在 Docker(或 Pouch 等)之上都不好意思說(shuō)自己的互聯(lián)網(wǎng)公司。

本文會(huì)簡(jiǎn)單介紹下 Docker 的基礎(chǔ)概念,入門(mén)級(jí)使用方式和一些使用 Docker 能大大提升效率的場(chǎng)景。

原理

對(duì) Docker 最簡(jiǎn)單并且?guī)в幸欢ㄥe(cuò)誤的認(rèn)知就是 “Docker 是一種性能非常好的虛擬機(jī)”。

正如上面所說(shuō),這是有一定錯(cuò)誤的說(shuō)法。Docker 相比于傳統(tǒng)虛擬機(jī)的技術(shù)來(lái)說(shuō)先進(jìn)了不少,具體表現(xiàn)在 Docker 不是在宿主機(jī)上虛擬出一套硬件后再虛擬出一個(gè)操作系統(tǒng),而是讓 Docker 容器里面的進(jìn)程直接運(yùn)行在宿主機(jī)上(Docker 會(huì)做文件、網(wǎng)絡(luò)等的隔離),這樣一來(lái) Docker 會(huì) “體積更輕、跑的更快、同宿主機(jī)下可創(chuàng)建的個(gè)數(shù)更多”。

Docker 中有三個(gè)核心概念:Image、Container、Repository。

  1. Image: 有領(lǐng)“好人卡”傾向的廣大程序猿一定對(duì) 鏡像 的概念不會(huì)陌生。但和 windows 的那種 iso 鏡像相比,Docker 中的鏡像是分層的,可復(fù)用的,而非簡(jiǎn)單的一堆文件迭在一起(類(lèi)似于一個(gè)壓縮包的源碼和一個(gè) git 倉(cāng)庫(kù)的區(qū)別)。

  2. Container: 容器的存在離不開(kāi)鏡像的支持,他是鏡像運(yùn)行時(shí)的一個(gè)載體(類(lèi)似于實(shí)例和類(lèi)的關(guān)系)。依托 Docker 的虛擬化技術(shù),給容器創(chuàng)建了獨(dú)立的端口、進(jìn)程、文件等“空間”,Container 就是一個(gè)與宿機(jī)隔離 “容器”。容器可宿主機(jī)之間可以進(jìn)行 port、volumes、network 等的通信。

  3. Repository: Docker 的倉(cāng)庫(kù)和 git 的倉(cāng)庫(kù)比較相似,擁有倉(cāng)庫(kù)名、tag。在本地構(gòu)建完鏡像之后,即可通過(guò)倉(cāng)庫(kù)進(jìn)行鏡像的分發(fā)。常用的 Docker hub 有 https://hub.docker.com/ 、 https://cr.console.aliyun.com/ 等。

相關(guān)命令

1. 安裝

Docker 的安裝是非常便捷的,在 macOS、ubuntu 等下面都有一鍵式安裝工具或者腳本。更多可以參考 Docker 官方教程。
安裝后 Terminal 中敲下 docker,有使用說(shuō)明出來(lái)的話(huà)大多情況下說(shuō)明已經(jīng)安裝成功了。

2. 尋找基礎(chǔ)鏡像

DockerHub 等網(wǎng)站都提供了眾多鏡像,一般情況下我們都會(huì)從它那找個(gè)鏡像作為基礎(chǔ)鏡像,然后再進(jìn)行我們的后續(xù)操作。

這里我們以 ubuntu 基礎(chǔ)鏡像為例,配置一個(gè) node 環(huán)境。

因?yàn)?“鏈路太長(zhǎng)” 的原因,國(guó)內(nèi)訪(fǎng)問(wèn) Docker Hub 可能會(huì)比較慢,可以使用國(guó)內(nèi)眾多廠商提供的鏡像加速器

從0開(kāi)始了解Docker入門(mén)的方法

3. 拉取基礎(chǔ)鏡像

利用 docker pull 命令即可從相關(guān) hub 網(wǎng)站上拉取鏡像到本地。同時(shí)在拉的過(guò)程中就能看到是按照多個(gè) “層” 去拉鏡像的。
> docker pull ubuntu:18.04

借助 Dockerfile 的能力,Docker 留下了無(wú)限的可能。

能做什么

說(shuō)了這么一堆,那實(shí)際生產(chǎn)環(huán)境中 Docker 能做什么呢?常用的可能有下面這些(歡迎在評(píng)論中補(bǔ)充)

1. 多環(huán)境的部署切換

業(yè)務(wù)開(kāi)發(fā)中往往需要區(qū)分開(kāi)發(fā)環(huán)境與線(xiàn)上環(huán)境,利用 Docker 能原封不動(dòng)的將開(kāi)發(fā)環(huán)境中的 代碼與環(huán)境原封不動(dòng)無(wú)污染的 遷移到線(xiàn)上環(huán)境,配合一定的自動(dòng)化流程即可實(shí)現(xiàn)自動(dòng)的發(fā)布。

2. 前端云構(gòu)建

因?yàn)?node_modules 的蛋疼問(wèn)題,同一個(gè)倉(cāng)庫(kù)下不同人開(kāi)發(fā)往往會(huì)遇到不同的人使用不同的 包版本 且自己根本不知道與別人不一樣,最終導(dǎo)致發(fā)布之后產(chǎn)生線(xiàn)上問(wèn)題。利用 Docker 可以在云端新建容器,遠(yuǎn)程 無(wú)污染、低成本 構(gòu)建代碼,實(shí)現(xiàn) 不同人用的一定是同一個(gè)版本。

3. 復(fù)雜環(huán)境一鍵配置

某些場(chǎng)景下可能會(huì)配一些超級(jí)復(fù)雜的環(huán)境(比如:大一同學(xué)配 Java 環(huán)境),這個(gè)時(shí)候可以利用 Docker 對(duì)環(huán)境配置做封裝,直接生成鏡像,讓大家低成本使用。

4. 持續(xù)集成單元測(cè)試

類(lèi)似于 travis-ci 這種

5. 同應(yīng)用多版本隔離、文件隔離

比如這個(gè)項(xiàng)目依賴(lài) node6,那個(gè)項(xiàng)目依賴(lài) node 8(只是舉例子,硬盤(pán)夠大的話(huà)還是建議通過(guò) nodeinstall 解決);同一臺(tái)服務(wù)器上跑了 100 個(gè) wordpress 程序(可以用 Docker 建立隔離開(kāi),防止互相污染)。

看完了這篇文章,相信你對(duì)“從0開(kāi)始了解Docker入門(mén)的方法”有了一定的了解,如果想了解更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!

原文鏈接:https://juejin.im/post/5ad3172c5188257ddb10109a


分享標(biāo)題:從0開(kāi)始了解Docker入門(mén)的方法
鏈接地址:http://weahome.cn/article/poogoh.html

其他資訊

在線(xiàn)咨詢(xún)

微信咨詢(xún)

電話(huà)咨詢(xún)

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部