Docker中宿主機與容器之間互傳文件(docker cp的方式)


場景

CentOS中使用Docker來部署Tomcat:

https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/119108232

在上面使用docker部署tomcat后,如果想將宿主機中的war包復制到容器中,

或者需要從tomcat的容器中將某文件復制到宿主機中怎么實現。

注:

博客:
https://blog.csdn.net/badao_liumang_qizhi
關注公眾號
霸道的程序猿
獲取編程相關電子書、教程推送與免費下載。

實現

宿主機復制到容器

在宿主機中執行

docker cp 宿主機中的文件的路徑 容器id:容器中的路徑

比如這里在宿主機下的usr下有個war包叫geoserver.war

需要將此war包復制到tomcat的容器中webapps路徑下

這里tomcat已經啟動,查看運行中的容器

docker ps

可以獲取到tomcat的容器id

 

 

然后在宿主機中

docker cp /usr/geoserver.war 39f5b723d1b8:/usr/local/tomcat/webapps

這里需要注意一點這里的容器內的路徑是用的全路徑,不能直接用/webapps

怎么查看容器內的全路徑,首先進入容器

docker exec -it 39f5b723d1b8 /bin/bash

 

 

然后執行

whereis tomcat

這樣就能獲取到tomcat的完整路徑

然后退出容器使用

exit

這樣就能從宿主機中將war包復制到tomcat容器中

 

 

 

從容器中復制到宿主機

在宿主機中執行

docker cp 容器id:容器內文件路徑 宿主機內路徑

比如這里要將tomcat容器內的webapps/docs/index.html文件復制到宿主機中的/usr路徑下

docker cp 39f5b723d1b8:/usr/local/tomcat/webapps/docs/index.html /usr

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM