Docker基礎入門:鏡像、容器導入導出與私有倉庫搭建

Docker基礎入門:鏡像導入導出與私有倉庫搭建

  • 一、 Docker鏡像、容器的導入和導出
    • 1.1、Docker鏡像的導出
    • 1.2、Docker鏡像的載入
    • 1.3、Docker容器的導出
    • 1.4、Docker容器的導入
  • 二、 鏡像和容器導出和導入的區別:
  • 三、commit操作_本地鏡像發布到阿里云
    • 3.1、commit操作有關步驟
    • 3.2、使用" docker push" 命令將centos鏡像提交至阿里云
  • 四、Docker私有倉庫搭建(registry)
    • 4.1、下載鏡像
    • 4.2、查看
    • 4.3、運行 registry
    • 4.4、測試上傳鏡像到Registry


💖The Begin💖點點關注,收藏不迷路💖

在這里插入圖片描述

一、 Docker鏡像、容器的導入和導出

1.1、Docker鏡像的導出

docker save [options]  images [images...]docker save > uu.tar ubuntu:latest
或
docker save ubuntu:latest > uu.tar

1.2、Docker鏡像的載入

#在鏡像包所在的文件夾下操作
docker load --input  uu.tar
#也可以使用
docker load -i uu.tar
或
docker load < uu.tar

1.3、Docker容器的導出

docker export 容器id/名稱 > 導出的路徑docker export 220aee82cfea > -o mysql.tar.gz

1.4、Docker容器的導入

容器的導入
docker import  - 鏡像用戶/鏡像名:鏡像版本號cat mysql.tar.gz | docker import - test/mysql:5.7

二、 鏡像和容器導出和導入的區別:

1.鏡像導入 是復制的過程。
2.容器導入 是將當前容器 變成一個新的鏡像。

save 和 export區別:

1)save 保存鏡像所有的信息-包含歷史信息。
2)export 只導出當前的信息。

首先,兩者的操作對象不同。docker save是將一個鏡像保存為一個tar包,而docker export是將一個容器快照保存為一個tar包。

然后,docker export導出的容器快照文件將丟棄所有的歷史記錄和元數據信息,即僅保存容器當時的快照狀態;而docker save保存的鏡像存儲文件將保存完整記錄,體積也要大。

三、commit操作_本地鏡像發布到阿里云

3.1、commit操作有關步驟

提交容器副本成為新的鏡像。

docker commit -m="提交的信息" -a="作者" 容器ID 要創建的目標鏡像名:[標簽名]

本地鏡像發布到阿里云:

  1. 登錄阿里云Docker Registry

在這里插入圖片描述

$ docker login --username=aliyun075054**** registry.cn-hangzhou.aliyuncs.com
用于登錄的用戶名為阿里云賬號全名,密碼為開通服務時設置的密碼。
您可以在訪問憑證頁面修改憑證密碼。
  1. 從Registry中拉取鏡像
$ docker pull registry.cn-hangzhou.aliyuncs.com/zhaohaibao/centos:[鏡像版本號]
  1. 將鏡像推送到Registry
$ docker login --username=aliyun075054**** registry.cn-hangzhou.aliyuncs.com
$ docker tag [ImageId] registry.cn-hangzhou.aliyuncs.com/zhaohaibao/centos:[鏡像版本號]
$ docker push registry.cn-hangzhou.aliyuncs.com/zhaohaibao/centos:[鏡像版本號]
請根據實際鏡像信息替換示例中的[ImageId][鏡像版本號]參數。
  1. 選擇合適的鏡像倉庫地址
從ECS推送鏡像時,可以選擇使用鏡像倉庫內網地址。推送速度將得到提升并且將不會損耗您的公網流量。
如果您使用的機器位于VPC網絡,請使用 registry-vpc.cn-hangzhou.aliyuncs.com 作為Registry的域名登錄。
  1. 示例
使用"docker tag"命令重命名鏡像,并將它通過專有網絡地址推送至Registry。
$ docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
registry.aliyuncs.com/acs/agent 0.7-dfb6816 37bb9c63c8b2 7 days ago 37.89 MB
$ docker tag 37bb9c63c8b2 registry-vpc.cn-hangzhou.aliyuncs.com/acs/agent:0.7-dfb6816
使用 "docker push" 命令將該鏡像推送至遠程。
$ docker push registry-vpc.cn-hangzhou.aliyuncs.com/acs/agent:0.7-dfb6816

3.2、使用" docker push" 命令將centos鏡像提交至阿里云

####將centos鏡像IMAGE ID (5d0da3dc9764)提交至阿里云  
[root@zyl-server ~]# docker images
REPOSITORY    TAG       IMAGE ID       CREATED         SIZE
nginx         latest    605c77e624dd   19 months ago   141MB
hello-world   latest    feb5d9fea6a5   23 months ago   13.3kB
centos        latest    5d0da3dc9764   23 months ago   231MB
[root@zyl-server ~]# docker tag 5d0da3dc9764  registry.cn-hangzhou.aliyuncs.com/zhaohaibao/centos:7.9
[root@zyl-server ~]# docker push  registry.cn-hangzhou.aliyuncs.com/zhaohaibao/centos:7.9
The push refers to repository [registry.cn-hangzhou.aliyuncs.com/zhaohaibao/centos]
74ddd0ec08fa: Layer already exists 
7.9: digest: sha256:a1801b843b1bfaf77c501e7a6d3f709401a1e0c83863037fa3aab063a7fdb9dc size: 529
[root@zyl-server ~]# 

在這里插入圖片描述

在這里插入圖片描述

四、Docker私有倉庫搭建(registry)

4.1、下載鏡像

[root@zyl-server ~]# docker pull registry
Using default tag: latest
latest: Pulling from library/registry
79e9f2f55bf5: Pull complete 
0d96da54f60b: Pull complete 
5b27040df4a2: Pull complete 
e2ead8259a04: Pull complete 
3790aef225b9: Pull complete 
Digest: sha256:169211e20e2f2d5d115674681eb79d21a217b296b43374b8e39f97fcf866b375
Status: Downloaded newer image for registry:latest
docker.io/library/registry:latest
[root@zyl-server ~]# 

4.2、查看

[root@zyl-server ~]# docker images

在這里插入圖片描述

4.3、運行 registry

docker run -d  -p 5000:5000 -v /zyl/myregistry/:/tmp/registry  --privileged=true registry
默認情況,倉庫被創建在容器的/var/lib/registry目錄下,建議自行用容器數據卷映射,方便宿主機聯調[root@zyl-server ~]# docker run -d  -p 5000:5000 -v /zyl/myregistry/:/tmp/registry  --privileged=true registry
4c3babd80e86c8e2b21f4ad1dffeec5ca42270e5d467bed2a93839e323bcd5c6
[root@zyl-server ~]# docker ps
CONTAINER ID   IMAGE      COMMAND                  CREATED             STATUS             PORTS                                       NAMES
4c3babd80e86   registry   "/entrypoint.sh /etc…"   10 seconds ago      Up 8 seconds       0.0.0.0:5000->5000/tcp, :::5000->5000/tcp   amazing_rhodes
780530eaf656   centos     "/bin/bash"              About an hour ago   Up About an hour                                               wizardly_dhawan
95420eae9ad9   nginx      "/docker-entrypoint.…"   About an hour ago   Up About an hour   80/tcp                                      great_pasteur
[root@zyl-server ~]# 

在這里插入圖片描述
瀏覽器訪問http://IP:5000/v2,顯示“{}” 說明registry運行正常。

在這里插入圖片描述

4.4、測試上傳鏡像到Registry

1、提交centos容器副本成為新的鏡像,Tag----》1.2 。

[root@zyl-server ~]# docker ps
CONTAINER ID   IMAGE      COMMAND                  CREATED             STATUS             PORTS                                       NAMES
4c3babd80e86   registry   "/entrypoint.sh /etc…"   5 minutes ago       Up 5 minutes       0.0.0.0:5000->5000/tcp, :::5000->5000/tcp   amazing_rhodes
780530eaf656   centos     "/bin/bash"              About an hour ago   Up About an hour                                               wizardly_dhawan
95420eae9ad9   nginx      "/docker-entrypoint.…"   2 hours ago         Up 2 hours         80/tcp                                      great_pasteur
[root@zyl-server ~]# docker commit -m="centos" -a="zyl" 780530eaf656 centos:1.2
sha256:d0a52e21dd65f98f7cd106d996e97e1b3e709431e4bb80cd2e3599953fa95fe6
[root@zyl-server ~]# docker images
REPOSITORY                                            TAG       IMAGE ID       CREATED          SIZE
centos                                                1.2       d0a52e21dd65   20 seconds ago   231MB
nginx                                                 latest    605c77e624dd   19 months ago    141MB
registry                                              latest    b8604a3fe854   21 months ago    26.2MB
hello-world                                           latest    feb5d9fea6a5   23 months ago    13.3kB
centos                                                latest    5d0da3dc9764   23 months ago    231MB
registry.cn-hangzhou.aliyuncs.com/zhaohaibao/centos   7.9       5d0da3dc9764   23 months ago    231MB
[root@zyl-server ~]# 

在這里插入圖片描述

2、查看當前私有倉庫鏡像(空)

[root@zyl-server ~]# curl -XGET http://192.168.234.10:5000/v2/_catalog
{"repositories":[]}
[root@zyl-server ~]# 

3、將主機的registry鏡像命名為符合倉庫要求的格式。registry_url:port/ImageName:tag

docker tag centos:1.2 192.168.234.10:5000/centos:1.2

在這里插入圖片描述

4、上傳centos鏡像到Registry倉庫

docker push 192.168.234.10:5000/centos:1.2

push失敗:

[root@zyl-server ~]# docker push 192.168.234.10:5000/centos:1.2
The push refers to repository [192.168.234.10:5000/centos]
Get "https://192.168.234.10:5000/v2/": http: server gave HTTP response to HTTPS client
[root@zyl-server ~]# 

解決:

這是因為我們啟動的registry服務不是安全可信賴的。這時需要修改客戶端docker的配置文件vi /etc/docker/daemon.json,添加下面的內容(insecure-registries服務地址):{
""registry-mirrors": ["https://XXX.mirror.aliyuncs.com"],
"insecure-registries": ["192.168.234.10:5000"]
}"registry-mirrors": ["https://XXX.mirror.aliyuncs.com"] 是阿里云代理的Registry Hub倉庫的地址,可以加快國內訪問Registry Hub倉庫的速度。修改好之后需要重啟Docker服務才能生效,執行命令:systemctl restart docker ,再push即可.

在這里插入圖片描述
5、再次推送

[root@zyl-server ~]# docker push 192.168.234.10:5000/centos:1.2
The push refers to repository [192.168.234.10:5000/centos]
Get "http://192.168.234.10:5000/v2/": dial tcp 192.168.234.10:5000: connect: connection refused
[root@zyl-server ~]# docker ps
CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES
[root@zyl-server ~]# 

報錯:connect: connection refused

解決:docker ps 查看發現沒有運行的鏡像實例,重新運行 registry。

docker run -d  -p 5000:5000 -v /zyl/myregistry/:/tmp/registry  --privileged=true registry### pushdocker push 192.168.234.10:5000/centos:1.2

在這里插入圖片描述

6、檢查–查看當前私有倉庫鏡像

[root@zyl-server ~]# curl -XGET http://192.168.234.10:5000/v2/_catalog
{"repositories":["centos"]}
[root@zyl-server ~]# 

在這里插入圖片描述
在這里插入圖片描述


至此,我們的Registry私有倉庫搭建完成,如果在今后中要使用,可以使用命令:

docker pull 192.168.234.10:5000/centos:1.2

💖The End💖點點關注,收藏不迷路💖

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/39989.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/39989.shtml
英文地址,請注明出處:http://en.pswp.cn/news/39989.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

ppt中線材相交接的地方,如何繪畫

ppt中線材相交接的地方&#xff1a; 在ppt中繪畫線材相互交接的地方&#xff1a; 1.1繪圖工具中的“弧形” 1.2小技巧 “弧形”工具點一下&#xff0c;在ppt中如下 1.3拖動活動點進行調整圖形 1.4繪畫圓弧 1.5調整“圓弧”的大小&#xff0c;鼠標放在“黃色點”位置&#xf…

【JVM】垃圾回收算法

目錄 一、判斷對象已“死” 1.1、引用計數算法 1.2、可達性分析算法 1.3、引用的概念 二、垃圾收集算法理論 2.1、分代收集理論 三、垃圾收集算法 3.1、標記--清除算法 3.2、標記--復制算法 3.3、標記--整理算法 一、判斷對象已“死” 在堆里面存放著Java世界中幾乎所…

【數據結構】二叉搜索樹

&#x1f680; 作者簡介&#xff1a;一名在后端領域學習&#xff0c;并渴望能夠學有所成的追夢人。 &#x1f40c; 個人主頁&#xff1a;蝸牛牛啊 &#x1f525; 系列專欄&#xff1a;&#x1f6f9;數據結構、&#x1f6f4;C &#x1f4d5; 學習格言&#xff1a;博觀而約取&…

億賽通電子文檔安全管理系統任意文件上傳漏洞復現

0x01 產品簡介 億賽通電子文檔安全管理系統&#xff08;簡稱&#xff1a;CDG&#xff09;是一款電子文檔安全加密軟件&#xff0c;該系統利用驅動層透明加密技術&#xff0c;通過對電子文檔的加密保護&#xff0c;防止內部員工泄密和外部人員非法竊取企業核心重要數據資產&…

excel隔行取數求和/均值

問題描述 如圖有好多組數據&#xff0c;需要求每組數據對應位置的平均值 解決方法 SUM(IF(MOD(ROW(C$2:C$81), 8) MOD(ROW(C2), 8), C$2:C$81, 0))/10然后下拉右拉擴充即可&#xff0c;其中需要根據自身需要修改一些數據 SUM(IF(MOD(ROW(起始列$起始行:結束列$結束行), 每…

MATLAB圖論合集(一)基本操作基礎

本帖總結一些經典的圖論問題&#xff0c;通過MATLAB如何計算答案。近期在復習考研&#xff0c;以此來鞏固一下相關知識——雖然考研肯定不能用MATLAB代碼哈哈&#xff0c;不過在實際應用中解決問題還是很不錯的&#xff0c;比C易上手得多~ 圖論中的圖&#xff08;Graph&#xf…

FOSSASIA Summit 2023 - 開源亞洲行

作者 Ted 致歉&#xff1a;本來這篇博客早就該發出&#xff0c;但是由于前幾個月頻繁差旅導致精神不佳&#xff0c;再加上后續我又參加了 Linux 基金會 7/27 在瑞士日內瓦舉辦的 Open Source Congress&#xff0c;以及 7/29-30 臺北的 COSCUP23&#xff0c;干脆三篇連發&#x…

儀表板展示 | DataEase看中國:2023年中國電影市場分析

背景介紹 隨著《消失的她》、《變形金剛&#xff1a;超能勇士崛起》、《蜘蛛俠&#xff1a;縱橫宇宙》、《我愛你》等國內外影片的上映&#xff0c;2023年上半年的電影市場也接近尾聲。據國家電影專資辦初步統計&#xff0c;上半年全國城市院線票房達262億元&#xff0c;已經超…

一、計算機網絡體系結構

Content 1. 計算機網絡的組成2. 計算機網絡的功能3. 計算機網絡的分類4. 計算機網絡的性能指標5. 計算機網絡分層結構OSI模型TCP/IP模型互聯網五層模型共同點&#xff1a; 6. 計算機網絡提供的服務按三種方式分類面向連接服務和無連接服務可靠服務和不可靠服務有連接服務和無連…

服務器卡頓了該如何處理

服務器卡頓了該如何處理 當Windows系統的服務器出現卡頓問題時&#xff0c;以下是一些常見的故障排除步驟&#xff1a; 1.檢查網絡連接&#xff1a;確保服務器的網絡連接正常。檢查網絡設備、交換機、防火墻等設備&#xff0c;確保它們正常運行。嘗試通過其他計算機訪問服務器…

Flink SQL TopN

Flink SQL 對于批處理&#xff08;Batch&#xff09;和流處理&#xff08;streaming&#xff09;模式的SQL&#xff0c;都支持 Top-N 查詢。Top-N 查詢可以根據指定列排序后獲得前 N 個最小或最大值。并且該結果集還可用于進一步分析。Flink 使用 OVER 窗口子句和過濾條件的組合…

近 2000 臺 Citrix NetScaler 服務器遭到破壞

Bleeping Computer 網站披露在某次大規模網絡攻擊活動中&#xff0c;一名攻擊者利用被追蹤為 CVE-2023-3519 的高危遠程代碼執行漏洞&#xff0c;入侵了近 2000 臺 Citrix NetScaler 服務器。 研究人員表示在管理員安裝漏洞補丁之前已經有 1200 多臺服務器被設置了后門&#x…

python學習筆記——軟件安裝

目錄 1. 安裝并驗證Python環境 2. 安裝并設置Visual Studio Code編輯器 3. 設置Visual Studio Code編輯器 4.軟件安裝包 1. 安裝并驗證Python環境 首先&#xff0c;雙擊打開python安裝包。 注意?? &#xff1a; 安裝之前需要關閉殺毒軟件&#xff0c;比如360。 然后&am…

如何快速優化 CnosDB 數據庫性能與延遲:使用 Jaeger 分布式追蹤系統

在正式的生產環境中&#xff0c;數據庫的性能和延遲對于確保系統的穩定和高效運行至關重要。特別是在與 CnosDB 數據庫進行交互時&#xff0c;更深入地了解其表現變得尤為重要。這時Jaeger 分布式追蹤系統發揮了巨大的作用。在本篇博客中&#xff0c;我們將深入探討如何通過使用…

探索網絡架構的關鍵角色:六種常用的服務器類型

在今天的數字時代&#xff0c;服務器是支撐各種在線服務和應用的基石。不同類型的服務器在網絡架構中扮演著不同的角色&#xff0c;從網頁傳輸到電子郵件交換&#xff0c;再到文件傳輸和內容分發。本文將深入探討六種最常用的服務器類型&#xff0c;解釋它們的功能和重要性&…

在 OpenCV 中使用深度學習進行年齡檢測-附源碼

文末附完整源碼和模型文件下載鏈接 在本教程中,我們將了解使用 OpenCV 創建年齡預測器和性別分類器項目的整個過程。 年齡檢測 我們的目標是創建一個程序,使用圖像來預測人的性別和年齡。但預測年齡可能并不像你想象的那么簡單,為什么呢?您可能會認為年齡預測是一個回歸問…

【【萌新的STM32學習-8】】

萌新的STM32學習-8 STM32CubeMX 是由 ST 公司開發的圖形化代碼自動生成工具&#xff0c;能夠快速生成初始化代碼&#xff0c; 如配置 GPIO&#xff0c;時鐘樹&#xff0c;中間件等&#xff0c;使用戶專注于業務代碼的開發。現在 ST 主推 HAL 庫代碼&#xff0c; 經典的標準外設…

數據治理有哪些產品

數據治理是現代企業管理中至關重要的一個環節。隨著企業的數據量不斷增長&#xff0c;如何有效地管理和利用數據成為了一個亟待解決的問題。幸運的是&#xff0c;市場上已經涌現出了許多優秀的數據治理產品&#xff0c;下面就來介紹一些常見的數據治理產品。 首先&#xff0c;我…