日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

Docker之容器導出為鏡像問題_docker

作者:gblfy ? 更新時間: 2023-07-03 編程語言

Docker容器導出為鏡像

Docker鏡像備份與遷移

  • 1. 容器保存為鏡像
  • 2. 鏡像備份
  • 3. 鏡像恢復與遷移

1. 容器保存為鏡像

我們可以通過以下命令將容器保存為鏡像

docker commit pinyougou_nginx mynginx
  • pinyougou_nginx是容器名稱
  • mynginx是新的鏡像名稱

pinyougou_nginx容器已經成功保存為mynginx鏡像,執行

docker images

查看鏡像,是否操作成功

此鏡像的內容就是你當前容器的內容,接下來你可以用此鏡像再次運行新的容器

記錄Docker容器轉鏡像

1.默認鏡像中安裝wget

Docker鏡像可以通過Dockerfile構建出來,也可以通過現有容器生成新的鏡像。這里記錄一次基于centos鏡像的修改版本的生成過程。

$ docker images
REPOSITORY ? ?TAG ? ? ? IMAGE ID ? ? ? CREATED ? ? ? ?SIZE
tomcat ? ? ? ?latest ? ?b0e0b0a92cf9 ? 6 weeks ago ? ?680MB
nginx ? ? ? ? latest ? ?87a94228f133 ? 8 weeks ago ? ?133MB
hello-world ? latest ? ?feb5d9fea6a5 ? 2 months ago ? 13.3kB
centos ? ? ? ?latest ? ?5d0da3dc9764 ? 2 months ago ? 231MB
redis ? ? ? ? latest ? ?02c7f2054405 ? 3 months ago ? 105MB
java ? ? ? ? ?8 ? ? ? ? d23bdf5b1b1b ? 4 years ago ? ?643MB

啟動默認的centos鏡像

$ docker run -it --name mycentos centos /bin/bash

發現在默認的鏡像中沒有wget命令

[root@b4c252cdd42a /]# wget
bash: wget: command not found

?

使用yum install在容器內安裝wget命令

[root@b4c252cdd42a /]# yum install wget
......
Complete!

2.導出容器再導入鏡像

如果每次新啟動的容器都要重新安裝wget很麻煩,所以導出容器再導入作為一個新的鏡像。

查看容器,看到名稱為mycentos

$ docker ps
CONTAINER ID ? IMAGE ? ? COMMAND ? ? ? CREATED ? ? ? ? ?STATUS ? ? ? ? ?PORTS ? ? NAMES
b4c252cdd42a ? centos ? ?"/bin/bash" ? 14 minutes ago ? Up 14 minutes ? ? ? ? ? ? mycentos

導出這個容器,容器導出后會在當前目錄中看到這個文件

$ docker export mycentos > mycentos_export.tar

?

將這個文件導入docker環境,會看到新的鏡像。

$ docker import - mycentos-image < mycentos_export.tar?
sha256:c7d000aaf05fa8d5b26a94dd3fbe09bf62a0007cbed73eeedefe6119434c375d
$ docker images
REPOSITORY ? ? ? TAG ? ? ? IMAGE ID ? ? ? CREATED ? ? ? ? SIZE
mycentos-image ? latest ? ?c7d000aaf05f ? 8 seconds ago ? 259MB
tomcat ? ? ? ? ? latest ? ?b0e0b0a92cf9 ? 6 weeks ago ? ? 680MB
nginx ? ? ? ? ? ?latest ? ?87a94228f133 ? 8 weeks ago ? ? 133MB
hello-world ? ? ?latest ? ?feb5d9fea6a5 ? 2 months ago ? ?13.3kB
centos ? ? ? ? ? latest ? ?5d0da3dc9764 ? 2 months ago ? ?231MB
redis ? ? ? ? ? ?latest ? ?02c7f2054405 ? 3 months ago ? ?105MB
java ? ? ? ? ? ? 8 ? ? ? ? d23bdf5b1b1b ? 4 years ago ? ? 643MB

3.執行新的鏡像

執行新的鏡像,可以看到新的鏡像已經包含了wget命令。

(base) wjx-mac-pro:~ wangjianxuan1$ docker run -it --name mycentos-cus mycentos-image /bin/bash
[root@3edd237aa0e5 /]# wget
wget: missing URL
Usage: wget [OPTION]... [URL]...

Try `wget --help' for more options.

為了方便,可以將這個鏡像提交到docker庫上,下次可以直接使用這個鏡像就可以了。?

總結

原文鏈接:https://gblfy.blog.csdn.net/article/details/90280644

  • 上一篇:沒有了
  • 下一篇:沒有了
欄目分類
最近更新