1. 程式人生 > 其它 >Docker 本地匯入映象/儲存映象/載入映象/刪除映象

Docker 本地匯入映象/儲存映象/載入映象/刪除映象

2021-07-08

1、Docker匯入本地映象

有時候我們自己在本地或者其它小夥伴電腦上拷貝了一份映象,有了這個映象之後,我們可以把本地的映象匯入,使用docker import 命令。

例如這裡下載了一個 alibaba-rocketmq-3.2.6.tar.gz 映象檔案,使用下列命令匯入:

[root@rocketmq-nameserver4 dev]# cat alibaba-rocketmq-3.2.6.tar.gz | docker import - rocketmq:3.2.6(映象名自己定義)
[root@rocketmq-nameserver4 dev]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE rocketmq 3.2.6 53925d1cf9f0 23 seconds ago 14MB my/python v1 36b6e288656c 2 days ago 281MB my/centos_width_python v1.0.1 36b6e288656c 2 days ago 281MB my/sinatra v2 8ba1d6a3ce4e 2 days ago 453MB hello-world latest 725dcfab7d63 4 months ago 1.84kB

可以看到匯入完成後,docker為我們生成了一個映象ID,使用docker images也可以看到我們剛剛從本地匯入的映象。

注意映象檔案必須是tar.gz型別的檔案。

[root@rocketmq-nameserver4 dev]# docker run -it rocketmq:3.2.6 /bin/bash ##啟動匯入本地映象,會報如下異常
docker: Error response from daemon: oci runtime error: container_linux.go:247: starting container process caused "exec: \"/bin/bash\": stat /bin/bash: no such file or directory".

解決方案: 暫時無解,有知道的兄臺請在下面留言,在此先謝了。


2、儲存映象
我們的映象做好之後,我們要儲存起來,以供備份使用,該怎麼做?使用docker save命令,儲存映象到本地。

[root@rocketmq-nameserver4 dev]# docker save -o rocketmq.tar rocketmq ##-o:指定儲存的映象的名字;rocketmq.tar:儲存到本地的映象名稱;rocketmq:映象名字,通過"docker images"檢視
[root@rocketmq-nameserver4 dev]# ll 


rocketmq.tar為剛儲存的映象

3、載入映象
我們有了本地的映象檔案,在需要的時候可以使用docker load將本地儲存的映象再次匯入docker中。
docker load --input rocketmq.tar 或 docker load < rocketmq.tar

4、刪除映象
有些映象過時了,我們需要刪除。使用如下的命令:docker rmi -f image_id ##-f:表示強制刪除映象;image_id:映象id