docker鏡像的導(dǎo)出和導(dǎo)入
顯示當(dāng)前docker中的鏡像:
docker images
鏡像列表如下:
REPOSITORY TAG IMAGE ID CREATED SIZE
pointsift latest 90b2ef439b40 2 weeks ago 12.6GB
ubuntu 18.04 735f80812f90 4 weeks ago 83.5MB
導(dǎo)出鏡像:
docker save -o <保存路徑> <鏡像名稱:標(biāo)簽>
如把A機(jī) ubuntu:18.04 導(dǎo)出到當(dāng)前文件夾,則在A機(jī)上運(yùn)行:
docker save -o ./ubuntu18.tar ubuntu:18.04
此時,把A機(jī)當(dāng)前文件夾下的ubuntu18.tar拷貝到另一臺安裝過docker的B機(jī)上,在B機(jī)上導(dǎo)入鏡像:
docker load --input ./ubuntu18.tar
這樣鏡像ubuntu:18.04就成功的從A機(jī)復(fù)制到B機(jī)上了
docker容器的導(dǎo)出與導(dǎo)入
顯示當(dāng)前docker中運(yùn)行的容器:
docker ps
運(yùn)行的容器列表如下:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
4a02996e83b1 ubuntu:18.04 "/bin/bash" 44 secondsago Up 42 seconds ubuntu18
停止容器:
docker stop <容器名>
如要想要導(dǎo)出ubuntu18,必須先停止(如果ubuntu18沒有運(yùn)行,則不需要執(zhí)行此步驟):
docker stop ubuntu18
如果容器已經(jīng)停止了,想要查看該容器,可以運(yùn)行(該命令會顯示所有的容器,包括運(yùn)行的和非運(yùn)行的):
docker ps -a
導(dǎo)出容器:
docker export <容器名> > <保存路徑>
如導(dǎo)在A機(jī)中導(dǎo)出容器ubuntu18:
docker export ubuntu18 > ./ubuntu18.tar
導(dǎo)入容器的命令:
docker import <文件路徑> <容器名>
把A機(jī)當(dāng)前文件夾下的ubuntu18.tar文件拷貝到B機(jī)上,在B機(jī)上運(yùn)行:
docker import ./ubuntu18.tar ubuntu18
啟動容器:
docker start <容器名>
B機(jī)上就多了一個名為ubuntu18的容器,但導(dǎo)入的容器還處在未運(yùn)行的狀態(tài),需要啟動容器:
docker start ubuntu18
進(jìn)入容器:
#同一個容器會有相同的界面,如果該容器之前已經(jīng)運(yùn)行過,則會直接進(jìn)入運(yùn)行容器的界面
#該命令通常用于進(jìn)入后臺已經(jīng)在運(yùn)行的容器
docker attach <容器名>
或者
#同一個容器有不同的界面,進(jìn)入容器后的界面不會受該容器的其他運(yùn)行者的影響
#一般情況下建議使用該命令
docker exec -it <容器名> <執(zhí)行指令>
啟動容器之后,需要進(jìn)入容器,可以運(yùn)行:
docker exec -it ubuntu18 /bin/bash