詳解Docker鏡像提交命令commit的工作原理和使用方法
在本地創(chuàng)建一個容器后,可以依據(jù)這個容器創(chuàng)建本地鏡像,并可把這個鏡像推送到Docker hub中,以便在網(wǎng)絡上下載使用。
下面我們來動手實踐。
docker pull nginx:1.15.3

用命令行啟動一個容器:
docker run -d -p 1080:80 --name jerry-nginx nginx:1.15.3

localhost:1080

進入容器的shell:
docker exec -it jerry-nginx /bin/bash
查看這個nginx鏡像默認的首頁:

我想在容器里使用wget,所以先安裝:
apt-get update && apt-get -y install wget

使用wget命令下載一個圖片文件和一個html文件到Nginx服務器存放網(wǎng)頁的位置:
wget --no-check-certificate -O /usr/share/nginx/html/evil.jpg https://github.com/raw/slvi/docker-k8s-training/master/docker/res/evil.jpg wget --no-check-certificate -O /usr/share/nginx/html/index.html https://github.com/raw/slvi/docker-k8s-training/master/docker/res/evil.html
重新刷新頁面,我們現(xiàn)在看到的頁面已經(jīng)變成了wget下載下來的頁面:

我們現(xiàn)在希望把這個容器里發(fā)現(xiàn)的修改固化下來,以便其他人可以使用。
docker commit jerry-nginx jerry-modify-nginx:1.0

使用命令將1.0設置成latest tag:
docker tag jerry-modify-nginx:1.0 jerry-modify-nginx:latest
用docker stop jerry-nginx把舊的容器停掉,再啟動修改后的容器jerry-modify-nginx:

docker history命名查看這個新鏡像的歷史:

執(zhí)行命令給這個新的鏡像打上標簽:
docker tag jerry-modify-nginx:latest registry.ingress.shcw46.k8s-train.shoot.canary.k8s-hana.ondemand.com/jerry-modify-nginx:760d7ca6
把打上標簽的鏡像push到遠端:
docker push registry.ingress.shcw46.k8s-train.shoot.canary.k8s-hana.ondemand.com/jerry-modify-nginx:760d7ca6

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
云原生Docker創(chuàng)建并進入mysql容器的全過程
前面我們已經(jīng)安裝好了Docker,也簡單了解了Docker,下面這篇文章主要給大家介紹了關于云原生Docker創(chuàng)建并進入mysql容器的相關資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下2023-02-02
在wsl-ubuntu中如何通過 docker 啟動 gpu-jupyter
這篇文章主要介紹了在wsl-ubuntu中如何通過 docker 啟動 gpu-jupyter,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧2024-01-01
解決docker中mysql時間與系統(tǒng)時間不一致問題
最近在Docker中裝mysql時,發(fā)現(xiàn)數(shù)據(jù)庫時間與系統(tǒng)時間相差8個小時。查詢資料發(fā)現(xiàn),docker的默認時區(qū)是0區(qū),其實這會對安裝的容器造成不少麻煩,比如執(zhí)行日志的記錄不準確等2021-12-12
docker-compose限制容器cpu和內(nèi)存方式
這篇文章主要介紹了docker-compose限制容器cpu和內(nèi)存方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-01-01

