国产精品无码一区二区三区太,亚洲一线产区二线产区区别,欧美A区,人妻jealousvue人妻

×

docker環(huán)境的搭建與使用

分類:云服務(wù)資訊 編輯: 瀏覽量:100
2021-07-23 14:41:39
??docker設(shè)想是交付運(yùn)行環(huán)境如同海運(yùn),OS如同一個(gè)貨輪,每一個(gè)在OS基礎(chǔ)上的軟件都如同一個(gè)集裝箱,用戶可以通過(guò)標(biāo)準(zhǔn)化手段自由組裝運(yùn)行環(huán)境,同時(shí)集裝箱的內(nèi)容可以由用戶自定義,也可以由專業(yè)人員制造。Docker中的容器,可以看作是將程序 + 運(yùn)行環(huán)境的打包后的新程序。這時(shí)候,你就不用關(guān)心你的程序的運(yùn)行環(huán)境了,因?yàn)槿萜骼锩娴沫h(huán)境就是你當(dāng)時(shí)開(kāi)發(fā)環(huán)境的一個(gè)拷貝。下面就由新網(wǎng)小編和大家講一講docker環(huán)境的搭建與使用。

??一、Docker環(huán)境搭建

??我是Ubuntu16.04(64位),先在終端執(zhí)行l(wèi)sb_release -cs(我的輸出結(jié)果是xenial),訪問(wèn)下載地址,依次選擇xenial/pool/stable/amd64/,選擇要下載的版本,復(fù)制鏈接地址,

??$ wget https://download.docker.com/linux/ubuntu/dists/$(lsb_release -cs)/pool/stable/amd64/docker-ce_18.06.1~ce~3-0~ubuntu_amd64.deb $ dpkg -i docker-ce_18.06.1~ce~3-0~ubuntu_amd64.deb $ sudo usermod -aG docker $USER #將用戶加入docker組,避免每次都要sudo

??重啟終端,不然還是需要sudo

??$ docker run hello-world

??docker-hello-world.png

??注:可能會(huì)保存因?yàn)橐蕾嚢鼪](méi)有安裝,根據(jù)錯(cuò)誤信息安裝即可

??添加鏡像源

??主要是加速作用,不然可能有時(shí)候會(huì)卡半天。

??$ sudo vi /etc/docker/daemon.json $ sudo cat /etc/docker/daemon.json { "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"] #國(guó)內(nèi)鏡像源 } $ sudo systemctl enable docker #設(shè)置開(kāi)機(jī)啟動(dòng) $ sudo systemctl daemon-reload #重新加載配置 $ sudo systemctl restart docker #重啟docker

??docker-compose

??這個(gè)Python程序可以方便地管理多個(gè)Docker實(shí)例組成的分布式服務(wù)。

??$ sudo apt install python3-pip $ sudo pip3 install docker-compose

??二、Docker簡(jiǎn)單使用

??運(yùn)行容器

??$ docker run hello-world

??這個(gè)命令首先會(huì)檢查本地是否有hello-world容器

??如果沒(méi)有就通過(guò)image創(chuàng)建,其中image就是容器的模板(一個(gè)二進(jìn)制文件),docker run image_name,實(shí)際上就是創(chuàng)建一個(gè)image實(shí)例,最后容器也就是一個(gè)文件。(也就是說(shuō),image就像相當(dāng)于類,容器相當(dāng)于類實(shí)例)

??如果本地沒(méi)有image就從docker的倉(cāng)庫(kù)下載下來(lái)

??創(chuàng)建一個(gè)新的容器,并且啟動(dòng)容器

??列出運(yùn)行中容器

??$ docker container ls #列出運(yùn)行中的容器 $ docker container ls -all #列出全部容器

??docker-containers.png

??第一個(gè)字段是ID,用來(lái)標(biāo)識(shí)容器實(shí)例,因?yàn)橐粋€(gè)image可以生成多個(gè)容器。

??結(jié)束容器運(yùn)行

??$ docker container kill $Container_ID #強(qiáng)行結(jié)束運(yùn)行中的容器,這個(gè)主要用來(lái)針對(duì)作為服務(wù)運(yùn)行的容器

??刪除容器

??容器在結(jié)束運(yùn)行后,一般不會(huì)自動(dòng)刪除,除非image中進(jìn)行了配置,或者在run的使用使用了-rm。那么刪除容器的命令是:

??$ docker container rm $Container_ID

??清理命令

??docker 1.13開(kāi)始 的清理命令

??$ docker container prune -f #刪除所有停止容器 $ docker image prune -f -a #刪除所有鏡像

??刪除none鏡像

??none 鏡像是一些沒(méi)有成功build的臨時(shí)鏡像,刪掉即可。

??$ docker rmi $(docker images -f "dangling=true" -q)

??Docker還有很多強(qiáng)大功能,暫時(shí)我也只用到這幾個(gè)而已了。

??Docker核心解決的問(wèn)題是利用LXC來(lái)實(shí)現(xiàn)類似VM的功能,從而利用更加節(jié)省的硬件資源提供給用戶更多的計(jì)算資源。同VM的方式不同,LXC其并不是一套硬件虛擬化方法 - 無(wú)法歸屬到全虛擬化、部分虛擬化和半虛擬化中的任意一個(gè),而是一個(gè)操作系統(tǒng)級(jí)虛擬化方法, 理解起來(lái)可能并不像VM那樣直觀。所以我們從虛擬化到docker要解決的問(wèn)題出發(fā),看看他是怎么滿足用戶虛擬化需求的。小伙伴們要想獲得更多docker環(huán)境的內(nèi)容,請(qǐng)關(guān)注新網(wǎng)!

聲明:免責(zé)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),也不承認(rèn)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)本社區(qū)中有涉嫌抄襲的內(nèi)容,請(qǐng)發(fā)

送郵件至:operations@xinnet.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),本站將立刻刪除涉嫌侵權(quán)內(nèi)容。本站原創(chuàng)內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)

需注明出處:新網(wǎng)idc知識(shí)百科

免費(fèi)咨詢獲取折扣

Loading