docker我的常用命令

  1. docker 服务启动,停止

    sudo service docker restart
    sudo service docker start
    sudo service docker stop
  2. 将运行caffe虚拟镜像

    docker run -i -t tleyden5iwx/caffe-cpu-master bash  #默认桥接模式运行
    docker run -itd --name  x6  --net=none tleyden5iwx/caffe-cpu-master /bin/bash #以none网络模式运行, 起名字叫x6
    
    docker attach x6      #进入叫x6的容器
    docker start x6       #启动叫x6的容器
    
    # docker volume, 用来做主机与容器之间的交互
    
     docker run -itd --name  t1  -v /home/john/dockerData:/dockerData tensorflow/tensorflow /bin/bash
    
    # 见下图,image带有repository 和 TAG的情况下启动
    
     docker run -itd --name c1 -v /home/john/dockerData:/dockerData caffe:v1 /bin/bash

    1

    查看这个镜像的系统信息

    cat /etc/issue
  3. 查看镜像

    docker images
  4. docker停止某个容器:

    docker stop t1
  5. Docker 下caffe的使用

    1. sudo docker run -t -i elezar/caffe:cpu /bin/bash
      • docker run 运行一个容器
      • -t 分配一个(伪)tty (link is external)
      • -i 交互模式 (so we can interact with it)
      • elezar/caffe:cpu 使用 elezar/caffe:cpu 镜像创建容器
      • /bin/bash 运行命令 bash shell
    2. 这时我们就可以发现我们已经进入了刚刚创建的容器中,hostname已经变成root@c5f24e953610,其中@后面的这一串数字是当前容器的ID。搭建好的caffe文件夹在/opt/caffe/目录下:
  6. 退出当前容器

    ctrl+D

    exit
  7. 查看容器的ID

    docker ps -a #停止的也可以查看
  8. 退出后,如果你想重新使用之前的容器,可以通过以下命令重启,回到之前的状态:

    $ docker start container_ID
    $ docker attach container_ID
  9. Docker删除指令

    //删除指定容器
    $ docker rm container_ID/name
    //删除所有已经停止的容器
    $ docker rm $(docker ps -a -q)
    //删除指定镜像
    $ docker rmi image_name
  10. docker volume :用来做主机和容器之间的交互,相当于一个共享文件夹

    • 首先在主机中创建一个用于存储数据的文件夹,并在其中新增一个文件作为测试:

      $ mkdir dockerData
      $ cd dockerData
      $ touch test-file
    • 然后将该文件夹挂载到新的容器中,在运行时使用-v来声明Volume:

      $ docker run -ti -v /home/john/dockerData:/dockerData mycaffe

      以上命令会将主机中的/home/elaine/dockerData目录挂载到容器中的/dockerData目录下,这样我们就可以在容器中看到这个目录了,并且可以看到我们事先存放的test-file

  11. docker commit : 扩展一个新的image

    $ docker commit c5f24e953610 mycaffe
    • 其中c5f24e953610是我们之前所使用容器的ID,可以通过docker ps -a查看;mycaffe是新生成的镜像的名称。
    • 这时候我们再使用docker images命令查看现有镜像,发现除了原始的elezar/caffe外,还多了一个名为mycaffe的镜像,即为我们刚创建的镜像
    • 如果我们现在为mycaffe创建一个容器,并查看data/mnist/目录,就会发现之前生成的mnist数据存在了,说明容器中的数据被我们保存下来了
    $ docker run -ti mycaffe /bin/bash
    $ cd /opt/caffe/data/mnist/
    $ ls
  12. 容器的导入(import),导出(export)

    1. 导出:docker export container(容器)
      我们使用容器 t1,现在要将这个容器保存为一个文件 mytf.tar
      1

      docker export t1> ./mytf.tar  
    2. 导入:
          docker import mytf.tar
  13. 镜像的保存(save)和加载(load)

    1. 保存:docker save IMAGE(镜像)
      现在将mytensorflow 这个镜像,保存为mytf-save.tar
      1

      docker save 7e2a09b4ce2c > ./mytf-save.tar  
    2. 加载:

      docker load < ./mytf-save.tar
    3. 区别
      (1).export导出的镜像文件大小 小于 save保存的镜像

      (2).export 导出(import导入)是根据容器拿到的镜像,再导入时会丢失镜像所有的历史,所以无法进行回滚操作(docker tag );而save保存(load加载)的镜像,没有丢失镜像的历史,可以回滚到之前的层(layer)。(查看方式:docker images –tree)

  14. docker tag

    docker tag 6f155d6adaf7 caffe:v1

    这里写图片描述

参考:1. http://blog.csdn.net/elaine_bao/article/details/53117676
2. http://blog.csdn.net/a906998248/article/details/46236687

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值