成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

如何將Docker容器復制/轉移到另一個主機?

譯文
云計算 前端
你可能在本地計算機上使用Docker實例,決定將它轉移到功能更強大的服務器上。或者你可能只想在多臺計算機上部署定制的容器,對容器進行“復制粘貼”。其他時候你可能對云計算提供商不滿意,想另換一家。無論是什么情況,都有一個很簡單的過程,下面會詳細介紹。

【51CTO.com快譯】由于Docker容器是小小的軟件盒子,你可以將它們從一臺計算機復制和轉移到另一計算機。然而這不常討論,可能是由于大企業自行構建庫,可以定制自己的映像,并在它們覺得合適時跨服務器分發。但如果你只是偶爾需要移動一個或多個容器,沒必要搞得這么復雜。

你可能在本地計算機上使用Docker實例,決定將它轉移到功能更強大的服務器上。或者你可能只想在多臺計算機上部署定制的容器,對容器進行“復制粘貼”。其他時候你可能對云計算提供商不滿意,想另換一家。無論是什么情況,都有一個很簡單的過程,下面會詳細介紹。

保存來自源主機的容器映像

不需要先停止容器,但強烈建議這么做。你將對Docker實例中的數據創建快照。如果這么做時實例在運行,最終出現在快照中的一些文件有可能不完整。想象一下有人上傳了一個500MB的文件。上載250MB后,你發出docker commit命令。上傳隨后繼續,但是當你在另一臺主機上恢復該Docker映像時,500MB中只有250MB可用。

所以,如果可以,先停止實例。

  1. docker stop NAME_OF_INSTANCE 

[[274753]]

Docker容器由普通的初始映像構建。隨著時間的推移,你將自己的更改添加到該基本映像。容器內運行的進程也可能保存自己的數據或進行其他更改。想保留這一切,你可以將此新狀態提交到新映像。

注意,如果實例目前在運行中,該操作會在其內容保存期間暫停該實例。如果向容器添加了大量數據,此操作需要較長時間才能完成。如果這是個問題,可以輸入docker commit -p=false NAME_OF_INSTANCE mycontainerimage而不是下一個命令,避免這個暫停。然而,除非絕對必要,否則別這么做。在這種情況下,創建數據不一致/不完整的映像的可能性會加大。

在本教程中,為因此生成的映像選擇了普通名稱:mycontainerimage。如果你愿意,可以更改此名稱。如果更改名稱,記得在遇到它的所有后續命令中替換它。

  1. docker commit NAME_OF_INSTANCE mycontainerimage 

如何將Docker容器復制/轉移到另一個主機?

現在,將此映像保存到文件,并壓縮它。

  1. docker save mycontainerimage | gzip > mycontainerimage.tar.gz 

接下來,使用你青睞的文件傳輸方法,將mycontainerimage.tar.gz復制到想把容器遷移過去的那個主機。

將容器映像加載到目標主機上

登錄到你已將映像轉移過去的主機后,將其導入到Docker。

  1. gunzip -c mycontainerimage.tar.gz | docker load 

由于你從未在這里初始化該容器,還無法用docker start啟動它。相反,你首次運行該Docker實例時,發出在過去使用的同一個命令。現在唯一的區別是你最后會使用“mycontainerimage”,而不是在過去使用的任何映像。

下一個命令只是一個例子;除非適用于你,否則別復制粘貼該命令。(首次運行映像時不需要特殊參數)

  1. docker run -d --name=PICK_NAME_FOR_CONTAINER mycontainerimage 

相比之下,在下面這個命令示例中,需要參數--publish將主機上的端口80轉發到容器上的端口80:

  1. docker run -d --name=http-server --publish 80:80 mycontainerimage 

之后,你可以使用docker stop和docker start命令正常停止和啟動該容器。

無需創建文件即可傳輸映像

有時你可能想跳過創建mycontainerimage.tar.gz文件這一步。也許你沒有足夠的磁盤空間,因為容器里面有大量數據。你可以保存、壓縮、傳輸和解壓縮映像,并將映像加載到目標主機上,一個命令即可搞定。運行前面討論的docker commit命令后,你可以使用:

  1. docker save mycontainerimage | gzip | ssh root@203.0.113.1 'gunzip | docker load' 

它在Windows上應該也管用,因為現在有內置的SSH客戶端(PuTTY不再必不可少)。

然后,繼續使用適用于你情況的docker run命令。

結束語

作為偶爾移動容器的臨時方案,docker save和docker load很棒。但請記住,如果你經常移動容器,可能應該改而構建自己的專有庫。

原文標題:How to Copy/Move a Docker Container to Another Host,作者:Alexandru Andrei

【51CTO譯稿,合作站點轉載請注明原文譯者和出處為51CTO.com】

 

責任編輯:未麗燕 來源: 51CTO.com
相關推薦

2020-06-18 10:12:42

云計算云安全數據

2012-08-11 21:43:11

2019-07-02 13:52:04

云計算數據中心IT

2020-05-09 10:50:10

聯絡中心遠程工作通信網絡

2010-08-26 22:05:05

2013-02-22 09:34:53

紅帽Hadoop開源

2019-11-11 09:55:05

Windows 10許可證新計算機

2019-02-25 18:54:14

ERP云端遷移

2011-01-19 09:25:40

互聯網

2010-04-19 10:50:01

Oracle轉移

2010-06-25 09:26:29

NetBeansNetBeans 6.

2020-01-06 10:51:24

云計算IT混合云

2019-04-03 11:25:59

Windows 10HDDSSD

2021-03-04 08:13:53

蘋果iCloud谷歌相冊

2016-12-26 15:23:21

戴爾

2018-02-25 17:30:18

2012-11-01 16:11:31

2021-04-25 14:54:53

數據庫安全系統

2019-10-11 11:14:26

Java進程環境

2011-06-17 11:00:05

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 午夜视频一区二区 | 国产成人在线视频 | 日韩毛片播放 | 亚洲一区二区国产 | 日韩成人精品在线观看 | 黄色一级片aaa | 亚洲日产精品 | 欧美一级二级视频 | 久久99深爱久久99精品 | 成人久久18免费网站麻豆 | 日韩欧美在线视频 | 8x国产精品视频一区二区 | 亚洲品质自拍视频网站 | 91在线视频播放 | a视频在线观看 | 久草成人网 | 国产成人精品一区二区三区在线 | 精品国产乱码久久久久久蜜柚 | 99久久精品国产一区二区三区 | 国产精品久久久久久婷婷天堂 | 精品亚洲一区二区三区 | 国产人成在线观看 | 一区二区三区四区免费视频 | 国产免费观看一级国产 | 久久免费视频1 | 欧美三级在线 | 91麻豆产精品久久久久久夏晴子 | 国产精品五区 | 狠狠干在线 | 99在线免费观看 | 精品欧美乱码久久久久久1区2区 | 精品一区二区在线视频 | 一区二区三区亚洲视频 | 中日字幕大片在线播放 | 国产99精品| 午夜免费视频 | 精品视频www | 亚洲免费在线视频 | 福利视频一区二区 | 91精品国产色综合久久不卡98 | 人人看人人草 |