docker宿主机访问容器_Linux运维-Docker|05.宿主机与容器相互复制文件

09bcbb5ed1342fc58f886d7b16f93090.png

经过上一节的学习,我们已经能够进入容器内部操作了

Linux运维-Docker|04.进入Docker容器内部

当我们需要复制文件到docker内部

或者需要从docker内部复制文件到宿主机时

使用docker cp命令

复制文件到容器内

docker cp 本地路径 容器ID:容器内路径

复制容器文件到宿主机

docker cp 容器ID:容器内路径 本地路径

启动一个容器来实验一下

docker run --rm -id centos:7 /bin/bash
5d8a93ce1ff3a508c998344f01529ee8.png

在本地创建一个文件,复制到容器里面

0ec455798facc69574fed8d669ebe3f5.png

登录到容器内部,可以找到复制到这里的文件

e1735404df0e50265269f78be7ba5436.png

在复制文件时有两个参数可以使用

--archive ,-a 存档模式复制文件的所有uid和gid

--follow-link ,-L 复制文件为链接文件时,会将目标文件复制过去

先来看下-L的使用

我们创建一个文件,再创建这个文件的链接文件

87a72b2ef64290e5c6eb76fa9b3f8739.png

将链接文件复制到容器内并登陆到docker内部查看

只是将链接文件复制倒容器内部了

由于缺少目标文件,链接文件显示红色,也无法查看

9cc0266b0a12e2ef0ca1d47fcaccbb79.png

我们加上-L选项,就能正确的复制目标文件到容器内部了

4e77c34b3eff8a00c03b4a927427f38f.png

使用docker cp复制文件夹的时候

使用-a能够尽可能的保留文件权限

有时候容器内部并不是使用的root用户

从宿主机复制文件到容器,如果权限不对,容器就无法访问此文件

也无法修改权限,所以我们就需要在宿主机上处理好权限

使用-a将文件连同uid和gid信息复制进去

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值