1.将docker宿主机中的文件copy到指定的容中

  • 启动dockers服务
  • sudo systemctl start docker
  • 使用systemctl status docker命令查看dockers的状态
  • 进入到指定容器的image中
  • docker run -i -t --name=WebApp 7e87 /bin/bash
    
    注释:
        docker run:启动container
        7e87:你想要启动的image (IMAGE ID 的前四位)
        -t:进入终端
        -i:获得一个交互式的连接,通过获取container的输入
        --name:为容器起一个名字
        /bin/bash:在container中启动一个bash shell
  • 在image中创建一个WebApp的目录,用于存放我们的项目
  • root@f27be71c4681:/# mkdir WebApp
    root@f27be71c4681:/# ls
    WebApp  bin  boot  dev  etc  home  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var
  •  输入exit 退出
  • 后台开启我们刚创建的项目,并查看CONTAINER ID
  • # 开启容器
    [root@localhost /]# docker start WebApp
    WebApp
    
    # 查看CONTAINER ID
    [root@localhost /]# docker ps
    CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
    f27be71c4681        7e87                "/bin/bash"         2 minutes ago       Up About a minute                       WebApp
  •  copy我们主机中/project_dir/. 下的所有文件到容器中的/WebApp 目录下
  • docker cp /project_dir/. f27be71c4681:/WebApp
    
    #解释:
        f27be71c4681 是 CONTAINER ID
  • 使用exec命令进入我们正在运行的WebApp容器中
  • [root@localhost /]# docker exec -it f27be71c4681 /bin/bash
    root@f27be71c4681:/# ls
    WebApp  boot  etc   lib    media  opt   root  sbin  sys  usr
    bin     dev   home  lib64  mnt    proc  run   srv   tmp  var
    root@f27be71c4681:/# cd WebApp/
    root@f27be71c4681:/WebApp# ls
    my_project
    

2.同样若想将指定容器中的文件拷贝到宿主机中只需更改下面这句话即可

  • docker cp f27be71c4681:/WebApp/.  /project_dir

     

完毕!

 

 

 

 

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐