Docker中的容器文件拷贝及目录挂载方式

 更新时间:2023年03月29日 14:13:11   作者:宏辉  
这篇文章主要介绍了Docker中的容器文件拷贝及目录挂载方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

Docker:容器文件拷贝

目标:掌握文件拷贝命令

将linux宿主机中的文件拷贝到容器内可以使用命令:

# docker cp 需要拷贝的文件或目录 容器名称:容器目录

# 创建一个文件abc.txt 
touch abc.txt

# 复制 abc.txt 到 mycentos2 的容器的 / 目录下 
docker cp abc.txt mycentos2:/ 

# 进入mycentos2容器 
docker exec -it mycentos2 /bin/bash 

# 查看容器 / 目录下文件
ll

将文件从容器内拷贝出来到linux宿主机使用命令:

# docker cp 容器名称:容器目录 需要拷贝的文件或目录

# 进入容器后创建文件aaa.txt
touch aaa.txt

# 退出容器
exit

# 在Linux宿主机器执行复制;将容器mycentos2的/aaa.txt文件复制到 宿主机器的/root目录下
docker cp mycentos2:/aaa.txt /root

注意:停止状态的容器也是可以进行文件拷贝的,可以拷进去,也可以拷出来。

Docker:容器目录挂载

目标:掌握目录挂载命令(其实就是目录映射)

  • 可以在创建容器的时候,将宿主机的目录与容器内的目录进行映射,这样我们就可以通过修改宿主机某个目录的文件从而去影响容器。
  • 创建容器时添加-v参数,后边为宿主机目录:容器目录
  • 例如: docker run -di -v /usr/local/test:/usr/local/test --name=mycentos3 centos:7(两个目录可以路径不同)
# 创建linux宿主机器要挂载的目录 
mkdir /usr/local/test 

# 创建并启动容器mycentos3
# 并挂载 linux中的/usr/local/test目录到容器的/usr/local/test
# 也就是在 linux中的/usr/local/test中操作相当于对容器相应目录操作 
docker run -di -v /usr/local/test:/usr/local/test --name=mycentos3 centos:7

# 在linux宿主机下创建文件 
touch /usr/local/test/bbb.txt

# 进入容器 
docker exec -it mycentos3 /bin/bash

# 在容器中查看目录中是否有对应文件bbb.txt
cd /usr/local/test
ll

注意:如果你共享的是多级的目录,可能会出现权限不足的提示。

这是因为CentOS7中的安全模块selinux把权限禁掉了,需要添加参数 --privileged=true 来解决挂载的目录没有权限的问题。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • docker形式简易部署kibana的过程

    docker形式简易部署kibana的过程

    这篇文章给大家介绍使用docker部署kibana服务的过程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2023-11-11
  • docker-compose如何单独更新某个服务

    docker-compose如何单独更新某个服务

    这篇文章主要介绍了docker-compose如何单独更新某个服务问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-05-05
  • Docker安装redis并且设置密码,以及进入容器修改密码方式

    Docker安装redis并且设置密码,以及进入容器修改密码方式

    这篇文章主要介绍了Docker安装redis并且设置密码,以及进入容器修改密码方式,
    2024-01-01
  • docker cgroup 资源监控的详解

    docker cgroup 资源监控的详解

    这篇文章主要介绍了docker cgroup 资源监控的详解的相关资料,希望通过本文能帮助到大家,让大家理解掌握这部分内容,需要的朋友可以参考下
    2017-10-10
  • docker快速部署zabbix的方法

    docker快速部署zabbix的方法

    zabbix标准组件是分布式的,因此部署过程中需要创建多个容器,本文主要介绍了docker快速部署zabbix的方法,具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-01-01
  • 利用Dockerfile部署SpringBoot项目的方法

    利用Dockerfile部署SpringBoot项目的方法

    这篇文章主要介绍了利用Dockerfile部署SpringBoot项目的方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-10-10
  • docker-entrypoint.sh文件的用处详解

    docker-entrypoint.sh文件的用处详解

    这篇文章主要介绍了docker-entrypoint.sh文件的用处,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-01-01
  • 在vscode中使用ssh运行docker:从下载到运行全流程

    在vscode中使用ssh运行docker:从下载到运行全流程

    首先在本机或者服务器上下载docker并运行,本文目的旨在本机下载docker并打包,然后在服务器上进行加载,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2024-08-08
  • 用Docker作为PaaS的替代方案是否完美无缺

    用Docker作为PaaS的替代方案是否完美无缺

    Docker的出现似乎又带来了一种新的选择,而且对于开发者来说更加灵活、便捷、易用。既然用户可以直接在Docker上运行,PaaS是否还有应用场景?面对企业繁杂的应用环境,用Docker作为PaaS的替代方案是否完美无缺
    2016-11-11
  • docker镜像、容器消失解决办法步骤记录

    docker镜像、容器消失解决办法步骤记录

    在工作中,Docker服务突然停止,镜像和容器消失是极为头疼的问题,解决方案分为检查存储空间和更换Docker安装目录两种,文中将两种方法介绍的非常详细,需要的朋友可以参考下
    2024-10-10

最新评论