Docker鏡像與容器的導(dǎo)入導(dǎo)出及常用命令的使用
Docker鏡像與容器的導(dǎo)入導(dǎo)出及常用命令

代碼示例:
在Docker中,鏡像和容器的導(dǎo)入導(dǎo)出是常見(jiàn)的操作,用于在不同環(huán)境之間遷移或分享容器化應(yīng)用。
以下是一些常用的Docker命令及其詳細(xì)例子:
Docker鏡像命令
1.拉取鏡像
docker pull 鏡像名 docker pull 鏡像名:tag
2.查看鏡像
docker images
3.搜索鏡像
docker search 鏡像名 docker search --filter=STARS=9000 mysql 搜索 STARS >9000 的mysql鏡像
4.刪除鏡像
docker rmi -f 鏡像名/鏡像ID
5.保存鏡像為tar文件(docker save)
docker save 鏡像名/鏡像ID -o 鏡像保存在哪個(gè)位置與名字 docker save tomcat -o /myimg.tar
6.從tar文件加載鏡像(docker load)
docker load -i 鏡像保存文件位置 docker load -i myimg.tar
Docker容器命令
1.運(yùn)行容器
docker run -it -d --name 要取的別名 鏡像名:Tag /bin/bash
2.查看容器
docker ps -a
3.停止容器
docker stop 容器ID/容器名
4.進(jìn)入容器
docker exec -it 容器名/容器ID /bin/bash docker attach 容器名/容器ID
5.退出容器
exit Ctrl + p + q
6.導(dǎo)出容器為tar文件(docker export)
docker export -o nginx-test.tar nginx-test
7.從tar文件導(dǎo)入為新鏡像(docker import)
docker import nginx-test.tar nginx:imp cat nginx-test.tar | docker import - nginx:imp
注意事項(xiàng):
- 使用docker import導(dǎo)入docker save產(chǎn)生的文件,雖然導(dǎo)入不提示錯(cuò)誤,但是啟動(dòng)容器時(shí)可能會(huì)提示失敗,如“docker: Error response from daemon: Container command not found or does not exist”的錯(cuò)誤。
- docker export導(dǎo)出的鏡像文件體積小于docker save保存的鏡像。
- docker import可以為鏡像指定新名稱(chēng),而docker load不能對(duì)載入的鏡像重命名。
- docker export不支持將多個(gè)鏡像打包到一個(gè)文件中,而docker save支持。
- docker export(docker import導(dǎo)入)是根據(jù)容器拿到的鏡像,再導(dǎo)入時(shí)會(huì)丟失鏡像所有的歷史記錄和元數(shù)據(jù)信息(即僅保存容器當(dāng)時(shí)的快照狀態(tài)),所以無(wú)法進(jìn)行回滾操作。而docker save保存(docker load加載)的鏡像,沒(méi)有丟失鏡像的歷史,可以回滾到之前的層(layer)。
- docker export的應(yīng)用場(chǎng)景主要用來(lái)制作基礎(chǔ)鏡像,而docker save的應(yīng)用場(chǎng)景是我們的應(yīng)用是使用docker-compose.yml編排的多個(gè)鏡像組合,但我們要部署的客戶(hù)服務(wù)器并不能連外網(wǎng)。這時(shí)就可以使用docker save將用到的鏡像打個(gè)包,然后拷貝到客戶(hù)服務(wù)器上使用docker load載入。
以上命令和例子為您提供了Docker鏡像與容器導(dǎo)入導(dǎo)出的詳細(xì)操作指南。
在實(shí)際操作中,確保您有相應(yīng)的權(quán)限來(lái)執(zhí)行這些命令,并且注意文件路徑和名稱(chēng)的正確性。
總結(jié)
這些僅為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Docker中使用Nginx代理多個(gè)應(yīng)用站點(diǎn)的方法
這篇文章主要介紹了Docker中使用Nginx代理多個(gè)應(yīng)用站點(diǎn)的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12
關(guān)于docker啟動(dòng)jenkins環(huán)境的問(wèn)題
這篇文章主要介紹了docker啟動(dòng)jenkins環(huán)境的問(wèn)題,文中提到了jenkins基本工作原理及管理員密碼獲取方法,對(duì)docker啟動(dòng)jenkins環(huán)境相關(guān)知識(shí)感興趣的朋友一起看看吧2022-04-04
Docker?容器跨主機(jī)通信?overlay的詳細(xì)步驟
Overlay網(wǎng)絡(luò)通過(guò)VXLAN技術(shù)創(chuàng)建虛擬網(wǎng)絡(luò),實(shí)現(xiàn)不同主機(jī)上容器的邏輯連接,支持跨主機(jī)通信,具有擴(kuò)展性、隔離性和靈活性,適用于大規(guī)模容器化部署2024-10-10
Linux下定時(shí)自動(dòng)備份Docker中所有SqlServer數(shù)據(jù)庫(kù)的腳本
這篇文章主要介紹了Linux下定時(shí)自動(dòng)備份Docker中所有SqlServer數(shù)據(jù)庫(kù)?,編寫(xiě)shell文件給出一個(gè)備份的范例,在Linux添加定時(shí)任務(wù),通過(guò)下列命令來(lái)檢測(cè)并安裝這個(gè)服務(wù),需要的朋友可以參考下2022-09-09
使用docker compose安裝harbor私有倉(cāng)庫(kù)的詳細(xì)教程
harbor鏡像倉(cāng)庫(kù)是由VMware開(kāi)源的一款企業(yè)級(jí)鏡像倉(cāng)庫(kù),它包括權(quán)限管理(RBAC)、LDAP、日志審核、管理界面、自我注冊(cè)、鏡像復(fù)制等諸多功能,本文給大家介紹docker compose安裝harbor的方法,需要的朋友參考下吧2021-06-06
詳解Docker創(chuàng)建支持ssh服務(wù)的容器和鏡像
本篇文章主要介紹了詳解Docker創(chuàng)建支持ssh服務(wù)的容器和鏡像,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-05-05
Docker基礎(chǔ)知識(shí)之Linux namespace圖文詳解
這篇文章主要給大家介紹了關(guān)于Docker基礎(chǔ)知識(shí)之Linux namespace的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。2018-03-03

