溫馨提示×

溫馨提示×

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

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

docker制作成鏡像的方法介紹

發(fā)布時間:2021-09-07 11:22:32 來源:億速云 閱讀:171 作者:chen 欄目:建站服務器

本篇內(nèi)容主要講解“docker制作成鏡像的方法介紹”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“docker制作成鏡像的方法介紹”吧!

docker制作鏡像一般有三個方法:1.基于容器制作;2.基于dockerfile實現(xiàn),鏡像制作的程序文件;3.Docker Hub Automated Builds。這里我們來介紹下基于容器制作鏡像。

舉例來說,啟動干凈的鏡像文件busybox,然后再容器內(nèi)創(chuàng)建httpd的根目錄和index.html文件,然后制作成行的鏡像。

啟動容器,名稱為sunny01img

docker run -it --name sunny01img busybox:sunny01
#在容器內(nèi)進行修改
/ # mkdir -p /web/html
/ # cd /web/html
/web/html # vi index.html
<h2>this is sunny docker image,it is a nice day!<\h2>

在另一個終端,執(zhí)行如下命令

docker commit -a "sunny<sunny@sunny.docker>" -p -m "for test commit image" sunny01img

用命令查看新生成的鏡像

docker images

查看到有tag為none的新生成的鏡像

然后將鏡像推送到云服務商的鏡像倉庫中,使用新的鏡像來啟動容器

新建一個標簽

docker tag 3498bc48a842 websrv:sunnyweb01

將新的鏡像websrv:sunnyweb01 運行為守護模式(-d,即后臺),然后指定進程為httpd,前端運行模式(-f),指定家目錄為/web/html

docker run --name sunnyweb01 -d websrv:sunnyweb01 httpd -f -h /web/html

查看

docker ps

查看到websrv:sunnyweb01鏡像運行為容器sunnyweb01.

查看進程信息

docker top sunnyweb01

查看詳細容器信息

docker inspect sunnyweb01

查看到當前的容器ip,測試httpd的服務

改變?nèi)萜鞯哪J啟動命令

在第一版新建鏡像websrv:sunnyweb01的基礎(chǔ)上創(chuàng)建第二版的鏡像,在另一個終端上,不執(zhí)行默認的cmd,而是默認啟動httpd服務

首先,先啟動鏡像,進入cmd,執(zhí)行相關(guān)命令

docker run --name sunnyweb02 -it websrv:sunnyweb01

打開另一個shell終端,執(zhí)行如下命令,生成一個新的鏡像

docker commit -a "sunny <sunny@ghnsunny.cn>" -p -m "web server" -c 'CMD ["/bin/httpd","-f","-h","/web/html"]' sunnyweb02

注意 -c,修改運行中的命令,后接一個字典,所有的字段都要分別傳遞,用引號引用,逗號隔開,否則參數(shù)傳遞失敗,導致鏡像不能啟動。

sunnyweb02是指當前要作為鏡像的模板容器名稱,如這里以sunnyweb02這個容器作為模板來創(chuàng)建新鏡像

給新生成的鏡像打標簽,將新生成的鏡像推送到云倉庫

啟動鏡像,容器名稱為web2.0,并且運行在后臺(-d)

測試,查看容器是否正常運行

docker ps

查看容器的ip

docker inspect web2.0

測試httpd服務

這個例子說明,制作鏡像是可以-c改變默認的命令,而不是默認的sh命令,可以讓容器基于新建鏡像啟動時運行指定的命令。

到此,相信大家對“docker制作成鏡像的方法介紹”有了更深的了解,不妨來實際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進入相關(guān)頻道進行查詢,關(guān)注我們,繼續(xù)學習!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI