mingche 发表于 2015-4-17 10:59:54

docker使用笔记

  最近听说docker很火,这两天学习了一下。本人实用的是mac os操作系统。
  有关什么是docker、docker的好处以及安装,请参考:http://tech.uc.cn/?p=2726

一、基本命令
  1、安装ubuntu虚拟机



docker pull ubuntu
  2、查看镜像



@~ $ docker images
REPOSITORY          TAG               IMAGE ID            CREATED             VIRTUAL SIZE
ubuntu            latest            9bd07e480c5b      9 days ago          192.7 MB
  3、登录ubuntu



@~ $ docker run -a stdin -a stdout -a stderr -i -t ubuntu /bin/bash
root@ccaffb725895:/# uname -a
Linux ccaffb725895 3.16.4-tinycore64 #1 SMP Thu Oct 23 16:14:24 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
root@ccaffb725895:/#
  下面解释一下上面的命令:docker run -i -t/bin/bash 使用image创建container并进入交互模式, login shell是/bin/bash
  4、查看container。退出ubuntu之后,查看



root@ccaffb725895:/# exit
exit
@~ $ docker ps -a
CONTAINER ID      IMAGE               COMMAND             CREATED             STATUS                      PORTS               NAMES
ccaffb725895      ubuntu:latest       "/bin/bash"         3 minutes ago       Exited (0) 15 seconds ago                     trusting_bohr      
二、保存container
  如果我以后登录ubuntu都输入上面这些命令太繁琐了,需要锁定container
  1、启动container



@~ $ docker ps -a
CONTAINER ID      IMAGE               COMMAND             CREATED             STATUS                      PORTS               NAMES
ccaffb725895      ubuntu:latest       "/bin/bash"         3 minutes ago       Exited (0) 15 seconds ago                     trusting_bohr      
@~ $ docker start ccaffb725895
ccaffb725895

  2、attach



@~ $ docker start ccaffb725895
ccaffb725895
@~ $ docker attach ccaffb725895
root@ccaffb725895:/#
root@ccaffb725895:/# uname -a
Linux ccaffb725895 3.16.4-tinycore64 #1 SMP Thu Oct 23 16:14:24 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
root@ccaffb725895:/#
  3、保存镜像,commit命令



@~ $ docker images
REPOSITORY          TAG               IMAGE ID            CREATED             VIRTUAL SIZE
ubuntu            latest            9bd07e480c5b      9 days ago          192.7 MB
@~ $ docker commit -a "liqiu " ccaffb725895 ubuntu:ssh-ubuntu
5d2941e8c0bf7fe988604f11d043a03331ec83536ce09f841e760d51156b6865
@~ $ docker images
REPOSITORY          TAG               IMAGE ID            CREATED            VIRTUAL SIZE
ubuntu            ssh-ubuntu          5d2941e8c0bf      About a minute ago   192.7 MB
ubuntu            latest            9bd07e480c5b      9 days ago         192.7 MB
三、删除container



@~ $ docker stop ccaffb725895
ccaffb725895
@~ $ docker ps -a
CONTAINER ID      IMAGE               COMMAND             CREATED             STATUS                     PORTS               NAMES
ccaffb725895      ubuntu:latest       "/bin/bash"         16 minutes ago      Exited (127) 5 minutes ago                     trusting_bohr      
@~ $ docker rm ccaffb725895
ccaffb725895
@~ $ docker ps -a
CONTAINER ID      IMAGE               COMMAND             CREATED             STATUS            PORTS               NAMES
@
四、恢复
  一切恢复平静之后,思考一个问题,我在虚拟机安装了一个curl,过几天我再启动它curl还存在吗?
  1、进入ubuntu,安装curl



@~ $ docker run -a stdin -a stdout -a stderr -i -t ubuntu /bin/bash
root@0efb23b52565:/# sudo apt-install curl
  2、退出之后,保存镜像



@~ $ docker commit -a "liqiu " 0efb23b52565 ubuntu:curl-ubuntu
aac468ce18c883bc71e849028a1718e57d80d3c6231840e6b1fdb4d66354bfe6
@~ $ docker images
REPOSITORY          TAG               IMAGE ID            CREATED            VIRTUAL SIZE
ubuntu            curl-ubuntu         aac468ce18c8      About a minute ago   204.1 MB
ubuntu            latest            9bd07e480c5b      9 days ago         192.7 MB
  3、重新进入镜像



@~ $ docker images
REPOSITORY          TAG               IMAGE ID            CREATED            VIRTUAL SIZE
ubuntu            curl-ubuntu         aac468ce18c8      About a minute ago   204.1 MB
ubuntu            latest            9bd07e480c5b      9 days ago         192.7 MB
@~ $ docker run -a stdin -a stdout -a stderr -i -t aac468ce18c8 /bin/bash
root@00ddbbab1ccf:/# curl www.baidu.com

......
......
......
五、其他命令介绍:
  ctrl-p ctrl-q 退出虚拟机,如果重新进入,可以使用docker attach ***



root@2c1282c522bf:/# (此时ctrl+p 然后 ctrl+q)
@~/git/github/docker-hive-on-tez-master $ docker attach 2c1282c522bf
root@2c1282c522bf:/# (重新进入了)

  
页: [1]
查看完整版本: docker使用笔记