1、查看容器

  1. [root@localhost ~]# docker ps
  2. CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
  3. cd6957191c52 nginx "nginx -g 'daemon ..." hours ago Up hours 192.168.51.227:->/tcp webserver

2、使用容器名字webserver进行文件复制

3、从宿主机复制到容器,命令:docker cp ceshi.txt webserver:/home/

4、进入容器,查看文件:docker exec -it webserver bash

  1. [root@localhost docker]# docker exec -it webserver bash
  2. root@cd6957191c52:/# cat /home/ceshi.txt
  3. hello,bob!
  4. nice to meet you!
  5. hello jack!
  6. nice to meet you too!

5、修改容器中的文件,并复制到宿主机,命令:docker cp webserver:/home/ceshi.txt ./

  1. root@cd6957191c52:/# cd /home/
  2. root@cd6957191c52:/home# echo "this is my bike" >> ceshi.txt
  3. root@cd6957191c52:/home# cat ceshi.txt
  4. hello,bob!
  5. nice to meet you!
  6. hello jack!
  7. nice to meet you too!
  8. this is my bike
  9. root@cd6957191c52:/home# exit
  10. exit
  11. [root@localhost docker]# docker cp webserver:/home/ceshi.txt ./
  12. [root@localhost docker]# cat ceshi.txt
  13. hello,bob!
  14. nice to meet you!
  15. hello jack!
  16. nice to meet you too!
  17. this is my bike

或者,把容器的名字改为容器的ID,获取容器ID的方法:

方法1、

  1. [root@localhost docker]# docker inspect -f '{{.Id}}' webserver
  2. cd6957191c52b25d29319b8ad450313931f2a8c730e4f1052704be957f8c573d

方法2、

  1. [root@localhost docker]# docker ps
  2. CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
  3. cd6957191c52 nginx "nginx -g 'daemon ..." hours ago Up hours 192.168.51.227:->/tcp webserver
  4. [root@localhost docker]# docker inspect -f '{{.Id}}' cd6957191c52
  5. cd6957191c52b25d29319b8ad450313931f2a8c730e4f1052704be957f8c573d

用容器ID复制,如下:

  1. [root@localhost docker]# docker inspect -f '{{.Id}}' webserver
  2. cd6957191c52b25d29319b8ad450313931f2a8c730e4f1052704be957f8c573d
  3. [root@localhost docker]# echo "abc">>ceshi.txt
  4. [root@localhost docker]# cat ceshi.txt
  5. hello,bob!
  6. nice to meet you!
  7. hello jack!
  8. nice to meet you too!
  9. this is my bike
  10. abc
  11. [root@localhost docker]# docker cp ceshi.txt cd6957191c52b25d29319b8ad450313931f2a8c730e4f1052704be957f8c573d:/home/
  12. [root@localhost docker]# docker exec -it webserver bash
  13. root@cd6957191c52:/# cd /home/
  14. root@cd6957191c52:/home# cat ceshi.txt
  15. hello,bob!
  16. nice to meet you!
  17. hello jack!
  18. nice to meet you too!
  19. this is my bike
  20. abc

不用容器全ID也可以

  1. [root@localhost docker]# docker ps
  2. CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
  3. cd6957191c52 nginx "nginx -g 'daemon ..." hours ago Up hours 192.168.51.227:->/tcp webserver
  4. [root@localhost docker]# docker cp cd6957191c52:/home/ceshi.txt ./abc.txt
  5. [root@localhost docker]# cat abc.txt
  6. hello,bob!
  7. nice to meet you!
  8. hello jack!
  9. nice to meet you too!
  10. this is my bike
  11. abc

docker容器与宿主交互数据的更多相关文章

  1. Docker容器学习梳理 - Volume数据卷使用

    之前部署了Docker容器学习梳理--基础环境安装,接下来看看Docker Volume的使用. Docker volume使用 Docker中的数据可以存储在类似于虚拟机磁盘的介质中,在Docker ...

  2. 如何让Docker容器随宿主机的启动而自动启动

    使用Docker容器部署服务时,不仅需要让服务随Docker容器的启动而启动,还需要让Docker容器随宿主机的启动而自动启动,为此Docker提供了Docker run的restart参数 #doc ...

  3. docker容器和宿主机之间复制文件

    https://blog.csdn.net/u012416928/article/details/55049063 https://blog.csdn.net/u011596455/article/d ...

  4. docker容器与宿主机的数据交互

    在生产环境中使用 Docker ,往往需要对数据进行持久化,或者需要在多个容器之间进行数据共享,这必然涉及容器的数据管理操作. 方式一.Docker cp命令 docker cp :用于容器与主机之间 ...

  5. Docker 容器与宿主机网段冲突导致网络无法 ping 通的解决方案

    docker 容器网络默认使用 bridge 桥接模式,正常情况下,容器会使用 daemon.json 中定义的虚拟网桥来与宿主机进行通讯. 最近更新 Docker for mac 之后,发现以前容器 ...

  6. Docker容器挂载宿主目录的情形分析

    Docker容器启动的时候,如果要挂载宿主机的一个目录,可以用-v参数指定. 譬如我要启动一个centos容器,宿主机的/test目录挂载到容器的/soft目录,可通过以下方式指定: # docker ...

  7. docker容器共享宿主机环境,从而为镜像体积减负

    一.背景介绍 响应公司技术发展路线,开发的服务均需要将打成docker镜像,使用docker进行统一管理.可是随着服务越来越多,镜像也越来越多.每次制作镜像的时候都需要将依赖打进容器,这样一个jre的 ...

  8. Docker容器获取宿主机信息

    最近在做产品授权的东西,开始宿主机为Window,程序获取机器硬件信息相对简单些,后来部署时发现各种各样的的环境问题,所有后来改用dokcer部署,docker方式获取宿主机信息时花了些时间,特此记录 ...

  9. Docker容器和宿主机互传文件

    1.docker容器向宿主机传送文件 格式: docker cp container_id:<docker容器内的路径> <本地保存文件的路径> 例: docker cp 10 ...

随机推荐

  1. 剑指offer(java版)【转】

    面试题 2 :实现单例模式 1. 饿汉式单例类 public class SingletonClass { private static final SingletonClass instance=n ...

  2. 配置正确情况下,hadoop 没有namenode的一个解决方法

    将hdfs里name与data清空,和将tmp清空 然后在hadoop目录下运行 hadoop namenode -format 启动   sbin/start-all.sh

  3. sql 语句按字段指定值排序及分页

    为特定字段赋值并排序 表[Table_temp]中列[col1]为字符,属性为varchar(),排序时需要按照B.A.C的顺序显示,则可按照以下SQL语句: select * from Table_ ...

  4. python第一百六十九天,第十九周作业

    FIRSTCRM 学员管理开发需求: 1.分讲师\学员\课程顾问角色, 2.学员可以属于多个班级,学员成绩按课程分别统计 3.每个班级至少包含一个或多个讲师 4.一个学员要有状态转化的过程 ,比如未报 ...

  5. Android项目的targetSDK>=23,在低于Android6.0的部分测试机(类似华为)上运行时出现的系统权限问题

    相信大家对Android6.0以上的动态权限已经有所了解,很多童鞋也已经跃跃欲试地将自己项目的targetSDK升级到了23及其以上,很不幸的是我也成为了其中一员,然而我还是图样图森破了,升级之后的问 ...

  6. GET vs. POST

    GET 和 POST 都创建数组(例如,array( key => value, key2 => value2, key3 => value3, ...)).此数组包含键/值对,其中 ...

  7. js获取当前页面url网址信息

    js如何准确获取当前页面url网址信息 在WEB开发中,时常会用到javascript来获取当前页面的url网址信息,在这里是我的一些获取url信息的小总结. 下面我们举例一个URL,然后获得它的各个 ...

  8. Vue学习之路3-浅析Vue-cli搭建项目后的目录结构

    1.前言 Vue并不限制你的代码结构.但是,它规定了一些需要遵守的规则:1.应用层级的状态应该集中到单个store对象中.2.提交mutation是更改状态的唯一方法,并且这个过程是同步的.3.异步逻 ...

  9. C语言 投票系统:给定候选人,从键盘输入候选人的名字,统计票数,并输出最终获胜者

    投票系统:给定候选人名单,从键盘输入候选人的名字,统计票数,并输出最终获胜者.若投票人输入的名字不在其候选名单上,则该票数无效. //凯鲁嘎吉 - 博客园 http://www.cnblogs.com ...

  10. 《Linux服务器的监控》

    本文地址:http://www.cnblogs.com/aiweixiao/p/7131532.html 原文地址(公众号):http://t.cn/RKwmqUs 点击关注 微信公众号 1. 监控概 ...