【Docker】【基礎(chǔ)基本使用

      網(wǎng)友投稿 818 2025-04-04

      一、基本命令使用


      1. docker run -d -p 80:80? images_name 后臺(tái)獨(dú)立運(yùn)行一個(gè)容器:

      參數(shù)說(shuō)明:

      -d?????? --在隔離模式下后臺(tái)運(yùn)行一個(gè)docker容器

      -p 80:80 --將宿主機(jī)的80端口映射到容器的80端口

      images_name --需要運(yùn)行的鏡像

      2. Docker exec

      二、docker基本使用

      制作docker鏡像

      鏡像的制作有兩種方法:

      第一種,使用dockerfile文件制作鏡像:

      制作鏡像之前,需要有一個(gè)應(yīng)用程序作為制作鏡像的內(nèi)容,將應(yīng)用程序包準(zhǔn)備好。

      制作鏡像需要一個(gè)dockerfile文件,在準(zhǔn)備好的應(yīng)用程序包根目錄下創(chuàng)建一個(gè)dockerfile文件。

      使用docker build -t images_name .? 查找當(dāng)前目錄的dockerfile文件來(lái)將該應(yīng)用程序包編譯成指定名字鏡像。

      第二種,先docker run運(yùn)行一下基礎(chǔ)鏡像,在容器中完成應(yīng)用的部署與啟動(dòng),再使用docker commit生成鏡像。使用這種方式生成的鏡像會(huì)在k8s中部署會(huì)出現(xiàn)問(wèn)題,不推薦使用

      運(yùn)行應(yīng)用容器

      使用基本運(yùn)行命令docker run -d -p? src_port: dst_port? images_name,運(yùn)行上面制作的鏡像在一個(gè)容器中

      在瀏覽器訪問(wèn)http://localhost:src_port就會(huì)訪問(wèn)到剛才打包的應(yīng)用App入口了

      打開(kāi)docker儀表板或者使用命令docker ps就能看到后臺(tái)正在運(yùn)行的應(yīng)用容器了。

      當(dāng)我們想進(jìn)去查看某個(gè)運(yùn)行的容器的時(shí)候,我們可以使用命令:docker exec 進(jìn)入到某個(gè)運(yùn)行容器的環(huán)境中。

      更新應(yīng)用容器

      當(dāng)我們需要更新修改應(yīng)用程序代碼的時(shí)候,需要重新更新制作應(yīng)用鏡像,并重新運(yùn)行應(yīng)用容器;如果我們之間修改代碼之后,重新制作鏡像,并重新運(yùn)行容器會(huì)出現(xiàn)端口沖突的問(wèn)題,因?yàn)樵瓉?lái)的舊容器還在運(yùn)行,直接重新運(yùn)行會(huì)發(fā)生沖突。更新方法是替換原來(lái)舊的容器。將舊 的容器給刪除掉。

      獲取需要?jiǎng)h除的容器ID,使用docker ps命令獲取

      停止運(yùn)行舊的容器,使用命令docker stop

      停止容器之后,就可以移除該容器,使用命令docker rm

      也可以使用命令docker rm -f ,強(qiáng)制停止并刪除容器

      最后就可以重新運(yùn)行docker run -dp : ?

      共享應(yīng)用容器

      想要共享你的應(yīng)用容器,首先的將你的鏡像給共享出去,共享鏡像,則需要docker倉(cāng)庫(kù),docker默認(rèn)的倉(cāng)庫(kù)是Docker Hub,Docker Hub倉(cāng)庫(kù)是最大的容器倉(cāng)庫(kù)和社區(qū),提供能我們免費(fèi)訪問(wèn)和使用,我們?cè)L問(wèn)Docker Hub只需要注冊(cè)一個(gè)Docker ID即可。

      在Docker Hub上面注冊(cè)https://www.docker.com/pricing?utm_source=docker&utm_medium=webreferral&utm_campaign=docs_driven_upgrade

      登錄到Docker Hub,創(chuàng)建一個(gè)倉(cāng)庫(kù),自定義個(gè)倉(cāng)庫(kù)名

      共享的話,確保可見(jiàn)性為public,當(dāng)然也提供私人倉(cāng)庫(kù),供個(gè)人或者團(tuán)隊(duì)使用

      然后就可以使用示例命令:docker push : tagname將鏡像推送到共享倉(cāng)庫(kù)中了。

      【Docker】【基礎(chǔ)】基本使用

      登錄docker Hub:docker login - u docker_id

      使用docker tag將要推送的鏡像名稱賦予一個(gè)新名稱:docker tag

      然后可以直接推送鏡像了:docker push

      共享鏡像之后,就可以在別的機(jī)子上面直接從你共享的倉(cāng)庫(kù)中拉取鏡像并運(yùn)行一個(gè)新的應(yīng)用容器實(shí)例。

      容器數(shù)據(jù)持久化DB

      當(dāng)我們運(yùn)行一個(gè)應(yīng)用容器之后,由于修改代碼,重新更新應(yīng)用容器,會(huì)發(fā)現(xiàn)之前的操作的數(shù)據(jù)不見(jiàn)了,為什么每次重啟容器之后,數(shù)據(jù)都被清除掉了?因?yàn)槊總€(gè)容器運(yùn)行之后,都擁有自己的獨(dú)立文件系統(tǒng),在其上面創(chuàng)建、更新和刪除文件都不會(huì)影響到其他容器,使用的知識(shí)暫時(shí)的存儲(chǔ)空間。因此我們需要將應(yīng)用容器操作的數(shù)據(jù)保存進(jìn)行持久化。

      docker提供了存儲(chǔ)卷volumes對(duì)象,每個(gè)容器可以利用存儲(chǔ)卷可以將容器的文件系統(tǒng)路徑連接到宿主機(jī)的文件路徑,也就是說(shuō)容器的文件目錄裝載的是宿主機(jī)的文件目錄,容器對(duì)文件的更改在宿主機(jī)上也能看得到,如果重啟容器時(shí)也是裝載相同的目錄,則也就共享到原來(lái)相同的文件了。docker默認(rèn)是不使用volumes;使用volume有兩種類型:一種是直接命名volumes,另一種是綁定掛載volumes。

      第一種直接創(chuàng)建并命名volume。

      創(chuàng)建一個(gè)volumes,通過(guò)使用命令:docker volume create

      將原來(lái)的運(yùn)行容器都停掉,使用一下命令重新啟動(dòng)容器(增加對(duì)volume的使用):docker run -dp : -v :/path

      可以使用docker volume inspect 查看具體的存儲(chǔ)信息:

      docker volume inspect

      [

      {

      "CreatedAt": "創(chuàng)建時(shí)間",

      "Driver": "local",

      "Labels": {},

      "Mountpoint": "數(shù)據(jù)存儲(chǔ)位置",

      "Name": "命名vulumes的名字",

      "Options": {},

      "Scope": "local"

      }

      ]

      第二種:使用綁定掛載vulume

      綁定掛載與直接命名volume區(qū)別在于:

      直接命名volume的存儲(chǔ)位置有docker控制,有默認(rèn)路徑,并且可以查看volume信息

      綁定掛載存儲(chǔ)位置不由docker控制,由我們自己定義

      docker run -dp 3000:3000 \

      -w /app -v "$(pwd):/app" \

      參數(shù)說(shuō)明:

      -w:設(shè)置容器運(yùn)行的工作目錄為/app

      -v "$(pwd):/app" :綁定容器的工作目錄/app掛載到宿主機(jī)的當(dāng)前目錄上

      Docker 容器 鏡像服務(wù)

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。

      上一篇:Excel2007公式常見(jiàn)顯示錯(cuò)誤原因是什么
      下一篇:Excel函數(shù)如何保留小數(shù)位數(shù)
      相關(guān)文章
      亚洲精品国产精品| 亚洲AV永久无码精品一福利| 日本亚洲中午字幕乱码| 在线观看亚洲AV日韩AV| 亚洲人成高清在线播放| 亚洲日韩中文字幕| 亚洲国产成人精品无码区在线秒播| 亚洲激情视频在线观看| 久久国产亚洲观看| 亚洲成人中文字幕| 亚洲伊人tv综合网色| 亚洲天天在线日亚洲洲精| 日木av无码专区亚洲av毛片| 久久亚洲AV成人无码| 亚洲男女性高爱潮网站| 亚洲国产成人超福利久久精品| 亚洲毛片基地日韩毛片基地| 亚洲国产精品线观看不卡| 亚洲国产精品yw在线观看| 亚洲一区二区三区精品视频 | 亚洲成a人无码av波多野按摩| 国产亚洲精品AAAA片APP| 国产尤物在线视精品在亚洲| 成人亚洲网站www在线观看| 亚洲欧洲国产成人综合在线观看 | 婷婷久久久亚洲欧洲日产国码AV| 亚洲福利视频一区| 亚洲精品永久www忘忧草| 亚洲国产情侣一区二区三区| 久久精品国产亚洲av麻豆蜜芽| 色老板亚洲视频免在线观| 亚洲熟妇av午夜无码不卡| 色综合久久精品亚洲国产| 亚洲国产成人久久综合区| 在线观看午夜亚洲一区| 亚洲人成电影福利在线播放| 亚洲国产精品日韩在线观看| 亚洲影院天堂中文av色| 高清在线亚洲精品国产二区| 亚洲桃色AV无码| 91天堂素人精品系列全集亚洲|