溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

docker怎么查詢鏡像版本信息

發(fā)布時(shí)間:2023-03-07 10:22:53 來(lái)源:億速云 閱讀:322 作者:iii 欄目:開發(fā)技術(shù)

今天小編給大家分享一下docker怎么查詢鏡像版本信息的相關(guān)知識(shí)點(diǎn),內(nèi)容詳細(xì),邏輯清晰,相信大部分人都還太了解這方面的知識(shí),所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來(lái)了解一下吧。

docker查詢鏡像版本信息

1. 官網(wǎng)查詢

訪問(wèn)https://hub.docker.com/搜索mysql

docker怎么查詢鏡像版本信息

選擇第一個(gè),然后點(diǎn)擊tag

docker怎么查詢鏡像版本信息

2. curl 訪問(wèn)url

docker search mysql

docker怎么查詢鏡像版本信息

curl https://registry.hub.docker.com/v1/repositories/mysql/tags\
| tr -d '[\[\]" ]' | tr '}' '\n'\
| awk -F: -v image='mysql' '{if(NR!=NF && $3 != ""){printf("%s:%s\n",image,$3)}}'

docker怎么查詢鏡像版本信息

什么是docker

Docker 是一個(gè)開源的應(yīng)用容器引擎,是虛擬化的一種輕量級(jí)替代技術(shù)。Docker 可以讓開發(fā)者打包他們的應(yīng)用以及依賴包到一個(gè)輕量級(jí)、可移植的容器中,然后發(fā)布到任何流行的 Linux 機(jī)器上,也可以實(shí)現(xiàn)虛擬化。

容器是完全使用沙箱機(jī)制,相互之間不會(huì)有任何接口,開銷很低。docker解決了服務(wù)器昂貴的問(wèn)題,生產(chǎn)環(huán)境和測(cè)試環(huán)境不一致的問(wèn)題。

什么要使用docker而不使用虛擬機(jī)

1).虛擬機(jī)的缺點(diǎn)

(1).資源占用多:虛擬機(jī)運(yùn)行需要大量的內(nèi)存、硬盤和CPU,而且是獨(dú)占這些資源

(2).啟動(dòng)慢:虛擬機(jī)也是個(gè)操作系統(tǒng),啟動(dòng)很慢

2).docker優(yōu)點(diǎn)

(1).體積小、占用資源少

(2).啟動(dòng)快:docker是個(gè)容器,是個(gè)進(jìn)程,既然是進(jìn)程所以啟動(dòng)比虛擬機(jī)(操作系統(tǒng))快

(3).進(jìn)程隔離:在一臺(tái)服務(wù)器上可以部署多個(gè)docker容器,而且互不干擾

(4).遷移輕松:docker可以制作鏡像進(jìn)行遷移,非常容易

docker有什么用

1).搭建微服務(wù)環(huán)境:一個(gè)服務(wù)器可以安裝多個(gè)容器,實(shí)現(xiàn)微服務(wù),并且降低服務(wù)器成本

2).降低服務(wù)器成本:在少量的服務(wù)器上可以通過(guò)docker安裝多個(gè)容器,不用購(gòu)買多個(gè)服務(wù)器

3).提供一次性的環(huán)境:docker可以將運(yùn)行項(xiàng)目所需要的資源、環(huán)境全部集中打包在一個(gè)鏡像內(nèi),無(wú)需再去配置搭建項(xiàng)目運(yùn)行所需要的資源和環(huán)境(無(wú)需重復(fù)配置),有利于測(cè)試、開發(fā)和部署

docker基本概念

1).image(鏡像):Docker 鏡像可以看作是一個(gè)特殊的文件系統(tǒng),提供了容器運(yùn)行時(shí)所需的程序、庫(kù)、資源、配置等文件外,還包含了一些為運(yùn)行時(shí)準(zhǔn)備的一些配置參數(shù)(環(huán)境變量、端口等),但是鏡像在構(gòu)建之后就不會(huì)被改變。

2).Container(容器):Docker 容器是一個(gè)開源的應(yīng)用容器引擎,讓開發(fā)者可以以統(tǒng)一的方式打包他們的應(yīng)用以及依賴包到一個(gè)可移植的容器中,然后發(fā)布到任何安裝了docker引擎的服務(wù)器上,也可以實(shí)現(xiàn)虛擬化。容器是完全使用沙箱機(jī)制,相互之間不會(huì)有任何接口(類似 iPhone 的 app)。幾乎沒有性能開銷,可以很容易地在機(jī)器和數(shù)據(jù)中心中運(yùn)行。

3).Dockerfile :Dockerfile是一個(gè)指令的集合文件,可以利用Dockerfile 制作一個(gè)鏡像

docker基本命令

1).查詢鏡像

docker search 鏡像名稱

2).拉取鏡像

docker pull 鏡像名稱

3).啟動(dòng)容器(以tomcat作為實(shí)例)

docker run -d --name fist_tomcat --privileged=true -e TZ="Asia/Shanghai" -v /etc/localtime:/etc/localtime -p 8081:8080 docker.io/tomcat
  • -d 表示以“守護(hù)模式”執(zhí)行/root/run.sh腳本,此時(shí) Tomcat 控制臺(tái)不會(huì)出現(xiàn)在輸出終端上。

  • -p 表示宿主機(jī)(8081)與容器的端口映射(8080,Tomcat容器固定的端口為8080,必須映射到8080)

  • –name 表示容器名稱,用一個(gè)有意義的名稱命名即可。

  • -v 表示需要將本地哪個(gè)目錄掛載到容器中,格式:-v <宿主機(jī)目錄>:<容器目錄>

  • -e 運(yùn)行上海時(shí)區(qū)格式

  • &ndash;privileged=true 開啟特權(quán),可以設(shè)置容器里的內(nèi)核參數(shù)

  • -e TZ=“Asia/Shanghai” -v /etc/localtime:/etc/localtime都是用來(lái)解決容器時(shí)區(qū)的問(wèn)題

Dockerfile 基本命令

1).FROM 基礎(chǔ)驚喜:基于那個(gè)鏡像作為基礎(chǔ)去構(gòu)建新的鏡像

2).COPY 源文件 目標(biāo)目錄:復(fù)制指令,從上下文目錄中復(fù)制文件或者目錄到容器里指定路徑

3).ADD 源文件 目標(biāo)目錄:和COPY基本一樣,但是ADD會(huì)自動(dòng)解壓壓縮包

4).RUN:執(zhí)行命令

5).CMD:執(zhí)行命令(和RUN類似,但二者運(yùn)行的時(shí)間點(diǎn)不同,CMD 在docker run 時(shí)運(yùn)行,RUN 是在 docker build)

 (1).注意:在執(zhí)行docker run命令后,CMD命令指定的程序會(huì)被docker run后面的程序所覆蓋

 (2).注意:如果 Dockerfile 中如果存在多個(gè) CMD 指令,僅最后一個(gè)生效

docker怎么查詢鏡像版本信息

6).ENTRYPOINT:類似于CMD,但是ENTRYPOINT的指令參數(shù)不會(huì)被docker run后面的指令所覆蓋

7).ENV:設(shè)置環(huán)境變量

8).VOLUME 系統(tǒng)目錄 docker目錄:掛載目錄,類似于-V

9).EXPOSE 8080:聲明端口

10).WORKDIR:類似于cd命令,進(jìn)入那個(gè)文件夾

運(yùn)行Dockerfile命令:

docker build -t 容器名稱:版本 .

.是上下文路徑,也就是dockerFile所在的目錄 

docker build -t tomcat:v1.3 .

Dockerfile示例

docker怎么查詢鏡像版本信息

FROM tomcat:8.5.38-jre8

ARG JAR_PATH=./target
#1.刪除ROOT文件夾,避免war包不解壓,[2,3]指定時(shí)區(qū)
RUN rm -rf /usr/local/tomcat/webapps/ROOT \
 && /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
 && echo 'Asia/Shanghai' >/etc/timezone

ADD ${JAR_PATH}/*.war /usr/local/tomcat/webapps/ROOT.war

CMD ["/usr/local/tomcat/bin/catalina.sh", "run"]

EXPOSE 8080

以上就是“docker怎么查詢鏡像版本信息”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會(huì)為大家更新不同的知識(shí),如果還想學(xué)習(xí)更多的知識(shí),請(qǐng)關(guān)注億速云行業(yè)資訊頻道。

向AI問(wèn)一下細(xì)節(jié)

免責(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)容。

AI