专注于Docker、Container等技术的交流和分享
挖掘最有价值的资讯动态、教程、国内外优秀资源

docker容器与物理机之间拷贝文件的方法

一般情况下,我们在启动容器的时候可以使用-v参数映射宿主机的文件或者目录到容器里,这样的话,在宿主机相关目录下的文件修改会自动在容器里生效。

但是,如果我们已经启动了一个容器的话,就只能使用下面的这种方式在容器和宿主机之间拷贝文件了。

docker ps 获取目标容器的ID或者容器的名称    # 我这里的是容器ID为52261df2fab6

docker inspect -f'{{.Id}}’ 容器的ID       # 获取容器的ID全名称

得到一串类似52261df2fab612b24b3502c4ad98c22aff70ce9fa641c5c9f735ac2415e92da3

cp /root/test.log /var/lib/docker/devicemapper/mnt/52261d…xxx/rootfs/root/   # 这样就把宿主机的test.log拷贝到容器的/root/目录下了。

# 说明:上面的这个方法在CentOS6.7通过yum安装的docker-io测试通过。我另一台测试机安装的是docker-engine,则根本没有/rootfs/这个目录。


最后,还有1个方法,就是在容器里面安装openssh-server和openssh-clients,然后通过scp的方式进行文件拷贝操作。但是docker官方不建议给docker使用ssh连接的方式去管理。

文章转自51CTO,点击查看原文

鲸鱼云公众号:dockercloud

鲸鱼云公众号

转载请加上原文链接和本文链接:鲸鱼云 » docker容器与物理机之间拷贝文件的方法

分享到:更多 ()

评论 抢沙发

评论前必须登录!