亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Docker 倉(cāng)庫(kù)管理和Docker Dockerfile詳解

 更新時(shí)間:2023年11月27日 16:04:34   作者:辭七七  
倉(cāng)庫(kù)(Repository)是集中存放鏡像的地方,以下介紹一下 Docker Hub,當(dāng)然不止 docker hub,只是遠(yuǎn)程的服務(wù)商不一樣,操作都是一樣的,對(duì)Docker 倉(cāng)庫(kù)管理相關(guān)知識(shí)感興趣的朋友一起看看吧

Docker 倉(cāng)庫(kù)管理和Docker Dockerfile

Docker 倉(cāng)庫(kù)管理

倉(cāng)庫(kù)(Repository)是集中存放鏡像的地方。以下介紹一下 Docker Hub。當(dāng)然不止 docker hub,只是遠(yuǎn)程的服務(wù)商不一樣,操作都是一樣的。

Docker Hub

目前 Docker 官方維護(hù)了一個(gè)公共倉(cāng)庫(kù) Docker Hub。

大部分需求都可以通過(guò)在 Docker Hub 中直接下載鏡像來(lái)實(shí)現(xiàn)。

注冊(cè)
下載地址免費(fèi)注冊(cè)一個(gè) Docker 賬號(hào)。

登錄和退出
登錄需要輸入用戶名和密碼,登錄成功后,我們就可以從 docker hub 上拉取自己賬號(hào)下的全部鏡像。

$ docker login

退出

退出 docker hub 可以使用以下命令:

$ docker logout

拉取鏡像
你可以通過(guò) docker search 命令來(lái)查找官方倉(cāng)庫(kù)中的鏡像,并利用 docker pull 命令來(lái)將它下載到本地。

以 ubuntu 為關(guān)鍵詞進(jìn)行搜索:

$ docker search ubuntu

使用 docker pull 將官方 ubuntu 鏡像下載到本地:

$ docker pull ubuntu 

推送鏡像
用戶登錄后,可以通過(guò) docker push 命令將自己的鏡像推送到 Docker Hub。

以下命令中的 username 請(qǐng)?zhí)鎿Q為你的 Docker 賬號(hào)用戶名。

$ docker tag ubuntu:18.04 username/ubuntu:18.04
$ docker image ls
REPOSITORY      TAG        IMAGE ID            CREATED           ...  
ubuntu          18.04      275d79972a86        6 days ago        ...  
username/ubuntu 18.04      275d79972a86        6 days ago        ...  
$ docker push username/ubuntu:18.04
$ docker search username/ubuntu
NAME             DESCRIPTION       STARS         OFFICIAL    AUTOMATED
username/ubuntu

Docker Dockerfile

什么是 Dockerfile?
Dockerfile 是一個(gè)用來(lái)構(gòu)建鏡像的文本文件,文本內(nèi)容包含了一條條構(gòu)建鏡像所需的指令和說(shuō)明。

使用 Dockerfile 定制鏡像
這里僅講解如何運(yùn)行 Dockerfile 文件來(lái)定制一個(gè)鏡像,具體 Dockerfile 文件內(nèi)指令詳解,將在下一節(jié)中介紹,這里你只要知道構(gòu)建的流程即可。

1、下面以定制一個(gè) nginx 鏡像(構(gòu)建好的鏡像內(nèi)會(huì)有一個(gè) /usr/share/nginx/html/index.html 文件)

在一個(gè)空目錄下,新建一個(gè)名為 Dockerfile 文件,并在文件內(nèi)添加以下內(nèi)容:

FROM nginx
RUN echo '這是一個(gè)本地構(gòu)建的nginx鏡像' > /usr/share/nginx/html/index.html

2、FROM 和 RUN 指令的作用

FROM:定制的鏡像都是基于 FROM 的鏡像,這里的 nginx 就是定制需要的基礎(chǔ)鏡像。后續(xù)的操作都是基于 nginx。

RUN:用于執(zhí)行后面跟著的命令行命令。有以下倆種格式:

shell 格式:

FROM nginx
RUN echo '這是一個(gè)本地構(gòu)建的nginx鏡像' > /usr/share/nginx/html/index.html

exec 格式:

RUN ["可執(zhí)行文件", "參數(shù)1", "參數(shù)2"]
# 例如:
# RUN ["./test.php", "dev", "offline"] 等價(jià)于 RUN ./test.php dev offline

注意:Dockerfile 的指令每執(zhí)行一次都會(huì)在 docker 上新建一層。所以過(guò)多無(wú)意義的層,會(huì)造成鏡像膨脹過(guò)大。例如:

FROM centos
RUN yum -y install wget
RUN wget -O redis.tar.gz "http://download.redis.io/releases/redis-5.0.3.tar.gz"
RUN tar -xvf redis.tar.gz

以上執(zhí)行會(huì)創(chuàng)建 3 層鏡像。可簡(jiǎn)化為以下格式:

FROM centos
RUN yum -y install wget \
    && wget -O redis.tar.gz "http://download.redis.io/releases/redis-5.0.3.tar.gz" \
    && tar -xvf redis.tar.gz

如上,以 && 符號(hào)連接命令,這樣執(zhí)行后,只會(huì)創(chuàng)建 1 層鏡像。

開(kāi)始構(gòu)建鏡像
在 Dockerfile 文件的存放目錄下,執(zhí)行構(gòu)建動(dòng)作。

以下示例,通過(guò)目錄下的 Dockerfile 構(gòu)建一個(gè) nginx:v3(鏡像名稱(chēng):鏡像標(biāo)簽)。

$ docker build -t nginx:v3 .

以上顯示,說(shuō)明已經(jīng)構(gòu)建成功。

上下文路徑
上一節(jié)中,有提到指令最后一個(gè) . 是上下文路徑,那么什么是上下文路徑呢?

$ docker build -t nginx:v3 .

上下文路徑,是指 docker 在構(gòu)建鏡像,有時(shí)候想要使用到本機(jī)的文件(比如復(fù)制),docker build命令得知這個(gè)路徑后,會(huì)將路徑下的所有內(nèi)容打包。

解析:由于 docker 的運(yùn)行模式是 C/S。我們本機(jī)是 C,docker 引擎是 S。實(shí)際的構(gòu)建過(guò)程是在 docker引擎下完成的,所以這個(gè)時(shí)候無(wú)法用到我們本機(jī)的文件。這就需要把我們本機(jī)的指定目錄下的文件一起打包提供給 docker 引擎使用。

如果未說(shuō)明最后一個(gè)參數(shù),那么默認(rèn)上下文路徑就是 Dockerfile 所在的位置。

注意:上下文路徑下不要放無(wú)用的文件,因?yàn)闀?huì)一起打包發(fā)送給 docker 引擎,如果文件過(guò)多會(huì)造成過(guò)程緩慢。

到此這篇關(guān)于Docker 倉(cāng)庫(kù)管理和Docker Dockerfile的文章就介紹到這了,更多相關(guān)Docker 倉(cāng)庫(kù)管理內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • docker資源限制和compose部署詳解

    docker資源限制和compose部署詳解

    默認(rèn)情況下,容器沒(méi)有資源限制,并且可以使用主機(jī)內(nèi)核調(diào)度程序允許的盡可能多的給定資源,這篇文章主要給大家介紹了關(guān)于docker資源限制和compose部署的相關(guān)資料,需要的朋友可以參考下
    2022-11-11
  • Docker 部署Mysql 服務(wù)和Redis 服務(wù)的方法

    Docker 部署Mysql 服務(wù)和Redis 服務(wù)的方法

    這篇文章主要介紹了Docker 部署Mysql 服務(wù)和Redis 服務(wù)的方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-11-11
  • 3分鐘帶你學(xué)會(huì)docker搭建帕魯服務(wù)器

    3分鐘帶你學(xué)會(huì)docker搭建帕魯服務(wù)器

    幻獸帕魯已經(jīng)正式開(kāi)服,目前在線人數(shù)已經(jīng)超過(guò)7W+,很多玩家想自己創(chuàng)建服務(wù)器和朋友一起聯(lián)機(jī)游玩,本文主要介紹了3分鐘帶你學(xué)會(huì)docker搭建帕魯服務(wù)器,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-01-01
  • 如何解決docker-compose網(wǎng)段路由沖突,docker-compose自定義網(wǎng)絡(luò)

    如何解決docker-compose網(wǎng)段路由沖突,docker-compose自定義網(wǎng)絡(luò)

    這篇文章主要介紹了如何解決docker-compose網(wǎng)段路由沖突,docker-compose自定義網(wǎng)絡(luò)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • docker使用alpine構(gòu)建jdk21鏡像的詳細(xì)步驟

    docker使用alpine構(gòu)建jdk21鏡像的詳細(xì)步驟

    這篇文章主要給大家介紹了關(guān)于docker使用alpine構(gòu)建jdk21鏡像的詳細(xì)步驟,鏡像中包含了應(yīng)用程序所需要的運(yùn)行環(huán)境,函數(shù)庫(kù),配置,以及應(yīng)用本身等各種文件,這些文件分層打包而成,需要的朋友可以參考下
    2024-03-03
  • 詳解docker pull 下來(lái)的鏡像文件存放的位置

    詳解docker pull 下來(lái)的鏡像文件存放的位置

    本篇文章主要介紹了詳解docker pull 下來(lái)的鏡像文件存放的位置,具有一定的參考價(jià)值,有興趣的可以了解一下。
    2017-04-04
  • Docker安裝MySQL8的方法步驟

    Docker安裝MySQL8的方法步驟

    本篇文章主要介紹了Docker安裝MySQL8的方法步驟,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-06-06
  • docker nginx 配置文件要點(diǎn)及注意事項(xiàng)

    docker nginx 配置文件要點(diǎn)及注意事項(xiàng)

    本文介紹了Nginx的配置要點(diǎn)及注意事項(xiàng),包括訪問(wèn)靜態(tài)資源、負(fù)載均衡等,在訪問(wèn)靜態(tài)資源時(shí),可以使用root或alias指令指定路徑,本文給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧
    2025-02-02
  • Docker使用的個(gè)人學(xué)習(xí)總結(jié)

    Docker使用的個(gè)人學(xué)習(xí)總結(jié)

    最近時(shí)不時(shí)會(huì)用到很多開(kāi)發(fā)工具,無(wú)奈裝了太多無(wú)用軟件,所以不想安裝太多開(kāi)發(fā)軟件在電腦上,所以想到了用docker容器來(lái)配置開(kāi)發(fā)環(huán)境適應(yīng)不同開(kāi)發(fā)內(nèi)容,這篇文章主要給大家總結(jié)了關(guān)于Docker使用的一些個(gè)人學(xué)習(xí)知識(shí)點(diǎn),需要的朋友們下面來(lái)一起看看吧。
    2017-06-06
  • 如何查看docker-compose.yml所在位置

    如何查看docker-compose.yml所在位置

    這篇文章主要介紹了如何查看docker-compose.yml所在位置問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-11-11

最新評(píng)論