Docker在服务器之间怎样导入导出镜像(服务器之间容器复制)
場景
Docker+Tomcat+geoserver+shp發布地圖服務:
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/119181528
在上面拉取了一個Tomcat的鏡像,并在tomcat中添加了一個war包
此war包為geoserver的war包,并且對此geoserver服務進行了一些更改。
總而言之就是容器中的鏡像進行過修改和配置,需要將這個容器整個的復制到新的
服務器上一份,就不用再重新配置環境了。
需要把容器打成鏡像,然后將鏡像從A服務器中導出,然后將導出的文件復制到B服務器中
再在B服務器中導入鏡像,然后就可以再B服務器中運行一樣的容器了。
注:
博客:
https://blog.csdn.net/badao_liumang_qizhi
關注公眾號
霸道的程序猿
獲取編程相關電子書、教程推送與免費下載。
實現
首先需要將A服務器中已經配置好的容器提交為鏡像
Docker怎樣提交鏡像(把容器打成鏡像):
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/119173260
參考如上。
提交命令為:
docker commit -a="badaodechengxvyuan" -m"addgeoserverandriver" 39f5b723d1b8 tomcatwithgeoserverandriver:1.0提交成功后查看所有鏡像
docker images?然后在A服務器上進行鏡像導出
docker save -o tomcatwithgeoserverandriver.tar tomcatwithgeoserverandriver:1.0前面是要導出的文件名 后面是要導出的鏡像名帶標簽
?然后就會在當前目錄下將鏡像導出,然后將此tar文件復制到B服務器上。
當然在B服務器上需要先安裝docker
CentOS7中Docker的安裝與配置:
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/119028701
然后再B服務器上執行鏡像導入
docker load -i /usr/tomcatwithgeoserverandriver.tar后面跟的是文件在B服務器上的路徑,然后就會在B服務器上復制出名字和標簽和環境等都一樣的鏡像
在導入之前為了確認還將B服務器上所有的鏡像全部刪除。
導入成功之后
?然后運行鏡像
docker run -d -p 8080:8080 --name tomcatwithgeoserverandriver tomcatwithgeoserverandriver:1.0然后交互式地進入B服務器中的tomcat容器,可以看到與A服務器中文件一樣。
?并且運行鏡像之后,可以直接訪問到和A服務器一樣的服務
?預覽也是沒問題的
?
總結
以上是生活随笔為你收集整理的Docker在服务器之间怎样导入导出镜像(服务器之间容器复制)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Docker+Tomcat+geoser
- 下一篇: Docker中运行命令时提示:Canno