沒有Docker倉庫還能分發映象嗎? 運維錄

2022-09-23 03:45:12 字數 966 閱讀 7610

匯入與匯出

首先明確的是建議優先使用docker倉庫,特別是對於docker集群而言 docker倉庫非常重要,但是某些應用場景下比如單機環境下使用docker-compse編排應用,如果沒有映象倉庫是不是就不能把docker映象分發給其它的主機了呢?

答案是否定的,對於這種單機或者小規模環境,我們可以使用 docker s**e 與 docker load 命令來完成映象的分發,甚至通過linux ssh與管道技術相結合,只需要一條命令可以直接把映象分發給目標主機。

總而言之當遇到上述環境而且沒有映象倉庫時,需要把一台機器上的映象拷貝到另一台機器,試試 docker s**e 與 docker load 命令吧。

舉個栗子

host a 匯出並壓縮docker 映象

docker s**e centos | gzip > img-centos.tar.gz

scp img-centos.tar.gz root@hostb:/root/

host b 匯入映象

gzip -dc img-centos.tar.gz | docker load批量操作如果你需要批量匯出/匯入映象,可以結合shell 命令與管道完成。

批量匯出

for i in `docker images | awk '/irm/ '`;do echo $i ; docker s**e $i | gzip > $.gz ;sleep 2 ;done其中awk 匹配映象名稱的關鍵字,print $3 輸出第三個欄位也就是映象id。

批量匯入

for i in `ls`; do echo $i; gzip -dc $i | docker load ; sleep 5;done命令幫助

s**e 命令

load命令

擴充套件結合 ssh 與 pv 命令的話,利用 linux強大的管道,只用乙個命令完成從乙個機器將映象分發到另一台機器。

注意 pv 命令用於顯示進度條,你可能需要單獨安裝這個命令。

Docker映象倉庫 Harbor

docker run net host name cg registry d p 5000 5000 v home docker mnt registry var lib registry registry 2 1 安裝pip wget python get pip.py 2 安裝docker co...

docker映象倉庫(3)

目錄docker映象倉庫自建倉庫的必要性 預設第三方提供的映象倉庫在海外,例如太慢了,所以我們要自己搭建 第三方映象倉庫一般不允許有太多的私有映象 harbor映象倉庫的搭建前提條件 需要安裝docker 需要有docker compose 安裝命令 tar zxf harbor offline i...

搭建docker映象私有倉庫

docker官方提供了docker hub來儲存我們的映象檔案。但由於docker hub管理的都是公開的映象,並且訪問的時候有時會特別的慢。所以我們打算來搭建乙個私有的倉庫,需要使用官方庫中的registry映象。執行registry映象 docker run d p 5000 5000 v ro...