您好,登錄后才能下訂單哦!
本篇內(nèi)容介紹了“docker基礎(chǔ)知識(shí)點(diǎn)有哪些”的有關(guān)知識(shí),在實(shí)際案例的操作過(guò)程中,不少人都會(huì)遇到這樣的困境,接下來(lái)就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!
1.為什么要提出docker?
將一個(gè)應(yīng)用項(xiàng)目上線時(shí),需要在服務(wù)器配置復(fù)雜的環(huán)境,過(guò)于費(fèi)時(shí)費(fèi)力,以及在同一臺(tái)服務(wù)器上部署不同的應(yīng)用,可能產(chǎn)生沖突。
2.傳統(tǒng)與現(xiàn)在應(yīng)用部署的不同?
a.傳統(tǒng):開(kāi)發(fā)人員開(kāi)發(fā)代碼包,直接交給運(yùn)維人員,再由運(yùn)維人員部署運(yùn)行環(huán)境,應(yīng)用上線
b.現(xiàn)在:開(kāi)發(fā)打包部署上線,一套流程完成
3.docker的優(yōu)勢(shì)?
a.docker將多個(gè)應(yīng)用通過(guò)容器隔離起來(lái),放在同一個(gè)服務(wù)器上運(yùn)行,可以避免不同應(yīng)用部署在同一臺(tái)服務(wù)器上而產(chǎn)生的沖突問(wèn)題
b.docker也可以利用隔離機(jī)制將服務(wù)器的資源利用到極致
4.docker的相關(guān)網(wǎng)站?
a.官網(wǎng)
b.官方文檔
c.鏡像倉(cāng)庫(kù)
下載系統(tǒng)的原生鏡像文件,一般都是幾個(gè)G大小,然后安裝在VM中,十分笨拙
通過(guò)docker鏡像倉(cāng)庫(kù),或者阿里云鏡像倉(cāng)庫(kù)下載鏡像(一般就幾M,或者幾百M(fèi)),在通過(guò)鏡像創(chuàng)建容器,容器之間彼此隔離,使用起來(lái)小巧方便
虛擬化技術(shù):可以較好且完整的模擬出一臺(tái)計(jì)算機(jī),但其占宿主主機(jī)的資源較多,安裝部署步驟多,操作麻煩,啟動(dòng)慢
容器化技術(shù):其不是模擬出一個(gè)完整的操作系統(tǒng),容器內(nèi)的應(yīng)用是直接運(yùn)行在宿主主機(jī)上,容器并沒(méi)有自己的內(nèi)核,也沒(méi)有虛擬自己的硬件。每個(gè)容器之間都是相互隔離的,都有自己的文件系統(tǒng),互不影響
a.應(yīng)用更快速的交付和部署
docker打包鏡像發(fā)布測(cè)試,一鍵運(yùn)行
b.更快捷的升級(jí)和擴(kuò)縮容
c.更簡(jiǎn)單的系統(tǒng)運(yùn)維
d.更高效的利用計(jì)算機(jī)資源
可以在一臺(tái)物理機(jī)上運(yùn)行多個(gè)容器實(shí)例,從而保證充分利用服務(wù)器的資源,把性能壓縮到極致
地址:https://blog.csdn.net/qq_44316726/article/details/108557361
a.docker會(huì)在本機(jī)上搜索鏡像,判斷其是否存在
b.若在本機(jī)上找到該鏡像,就使用該鏡像創(chuàng)建容器。否則,進(jìn)行下一步
c.去docker Hub官網(wǎng)下載鏡像,若找到了該鏡像就下載到本地,并使用其創(chuàng)建容器。若沒(méi)有找到該鏡像,就返回錯(cuò)誤
docker是一個(gè)Client-Server結(jié)構(gòu)的系統(tǒng),docker的守護(hù)進(jìn)程運(yùn)行在主機(jī)上,使用者通過(guò)Socket從客戶端訪問(wèn)該進(jìn)程。docker-Server在接收到docker-Client的指令后,會(huì)執(zhí)行該指令
docker version #顯示docker的版本信息
docker info #顯示詳細(xì)的系統(tǒng)詳細(xì),包括鏡像和容器的數(shù)量
docker 命令 --help #顯示該命令的詳細(xì)信息,以及使用方法
查看鏡像:
docker images #查看本地主機(jī)上的鏡像
#參數(shù)介紹 -a 列出所有鏡像 -q 只顯示鏡像的id
搜素鏡像
docker search 鏡像名
#參數(shù)介紹 --f 過(guò)濾選項(xiàng)
實(shí)例:docker search --filter=SIZE=5000 mysql
下載鏡像
docker pull 鏡像名 #默認(rèn)下載最新版本的鏡像
docker pull 鏡像名:版本號(hào) #下載指定版本
刪除鏡像
docker rmi -f 鏡像id #刪除一個(gè)鏡像
docker rmi -f 鏡像id 鏡像id #刪除多個(gè)鏡像
docker rmi -f $(docker image -aq) #刪除所有本地的鏡像
注意:我們只有有了鏡像,才可以常見(jiàn)容器
新建并啟動(dòng)容器
docker run [選項(xiàng)] 鏡像名
#選項(xiàng)解釋
--name='centos01' #指定容器的名稱,用于區(qū)分同一鏡像創(chuàng)建的不同容器
-d #后臺(tái)運(yùn)行
-it #交互式運(yùn)行,并進(jìn)入容器查看內(nèi)容
-p #指定容器的端口
-p ip:主機(jī)端口:容器端口
-p 主機(jī)端口:容器端口
-p 容器端口
容器端口
-P #隨機(jī)指定端口
列出運(yùn)行的容器
docker ps [選項(xiàng)] #列出正在運(yùn)行的容器
選項(xiàng)解釋
-a #列出正在運(yùn)行的容器+歷史上運(yùn)行的容器
-n=數(shù)字 #列出最近的進(jìn)程容器
-q #只顯示容器的編號(hào)
退出容器
exit #退出并停止容器
Ctrl+q+p #退出不停止容器
刪除容器
docker rm 容器id #刪除指定容器,但不可以刪除正在運(yùn)行中的容器
docker rm -f 容器id #可以刪除正在運(yùn)行中的容器
docker rm -f $(docker ps -aq) #刪除所有容器
啟動(dòng)停止容器
docker start 容器id
docker restart 容器id
docker stop 容器id
docker kill 容器id #強(qiáng)制停止容器
docker logs --tf --tail 日志顯示條數(shù) 容器id
docker top 容器id
docker inspect 容器id
docker exec -it 容器id /bin/bash #進(jìn)入容器后,會(huì)開(kāi)啟新的終端,在里面操作
docker attach 容器id #進(jìn)入容器后,不會(huì)開(kāi)啟新的終端,直接使用正在運(yùn)行的終端
docker cp 容器id:容器內(nèi)路徑 物理主機(jī)的目標(biāo)路徑
“docker基礎(chǔ)知識(shí)點(diǎn)有哪些”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。