刚刚接触到docker的同事可能会一头雾水,docker到底是一个什么东西,先看看官方的定义。

Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的、可移植的、自给自足的容器。开发者在笔记本上编译测试通过的容器可以批量地在生产环境中部署,包括VMs(虚拟机)、bare metal、OpenStack 集群和其他的基础应用平台。

根据官方的定义,我理解就是Docker最终目的就是建立一个轻量化的容器,并且容器是可以定制,通过Docker来启动定制容器。

1、安装

  • 查看docker的安装位置
    [root@IDC-D-1699 docker]# whereis docker    
    docker: /usr/bin/docker /etc/docker /usr/local/bin/docker /usr/libexec/docker /usr/share/man/man1/docker.1.gz
  • 内核升级成功后下载1.9.1的版本,
    curl -sSL -O https://get.docker.com/builds/Linux/x86_64/docker-1.9.1。
  • 替换原有的docker   
    cp docker-1.9.1 /usr/local/bin/docker
  • 启动并查看docker版本
    [root@IDC-D-1699 docker]# service docker start
    Starting docker: [确定]
    [root@IDC-D-1699 docker]# docker version
    Client:
    Version: 1.9.1
    API version: 1.21
    Go version: go1.4.3
    Git commit: a34a1d5
    Built: Fri Nov 20 17:56:04 UTC 2015
    OS/Arch: linux/amd64 Server:
    Version: 1.9.1
    API version: 1.21
    Go version: go1.4.3
    Git commit: a34a1d5
    Built: Fri Nov 20 17:56:04 UTC 2015
    OS/Arch: linux/amd64
  • 使用加速器
    curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://e39eb134.m.daocloud.io
    [root@IDC-D-1699 docker]# curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://e39eb134.m.daocloud.io
    Success.
    You need to restart docker to take effect : sudo service docker restart

2、Docker命令

要想熟练的使用docker掌握好命令是第一前提。

分类 命令
环境信息 info,version
容器生命周期管理 create,exec,kill,pause,restart,rm,run,start,stop,unpause
镜像仓库命令 login,logout,pull,push,search
镜像管理 build,image,import,load,rmi,save,tag,commit
容器运维操作 attach,export,inspect,port,ps,rename,stats,top,wait,cp,diff
系统日志信息 events,history,logs

2.1 环境信息

docker info 用于检测Docker是否正确安装,如果正确安装会输出Docker环境信息。

[root@IDC-D-1699 ~]# docker info
Containers: 1
Images: 22
Storage Driver: devicemapper
Pool Name: docker-104:3-1313361-pool
Pool Blocksize: 65.54 kB
Backing Filesystem: extfs
Data file: /dev/loop0
Metadata file: /dev/loop1
Data Space Used: 953 MB
Data Space Total: 107.4 GB
Data Space Available: 106.4 GB
Metadata Space Used: 1.884 MB
Metadata Space Total: 2.147 GB
Metadata Space Available: 2.146 GB
Udev Sync Supported: true
Deferred Removal Enabled: false
Data loop file: /var/lib/docker/devicemapper/devicemapper/data
Metadata loop file: /var/lib/docker/devicemapper/devicemapper/metadata
Library Version: 1.02.117-RHEL6 (2016-04-01)
Execution Driver: native-0.2
Logging Driver: json-file
Kernel Version: 2.6.32-642.el6.x86_64
Operating System: <unknown>
CPUs: 4
Total Memory: 3.738 GiB
Name: IDC-D-1699
ID: RSDT:BELZ:DD36:AFSX:FDO7:ESFG:JYQA:ID5P:ENAK:YQGQ:5RMC:OBXN

Docker info 和 Docker version并没有额外的操作参数。

2.2 docker run

docker run 是核心命令之一,在使用docker时执行最多的命令,具体了解别忘了 docker run --help。

2.2.1 命令格式
docker run [options] image [commond] [arg…]

-d 后台模式运行,如果没有-d这个参数容器进入前台模式

-i 使用交互模式,始终保持输入流开放

-t 分配一个伪终端,一般两个参数合起来使用-it,即可在容器中利用打开的伪终端进行交互操作。

--name 指定容器启动的名称。

-c 选项给运行在容器中所有进程分配CPU的share值

3、搜索可用镜像

目前国内比较好的daocloud.com镜像站,功能还是比较强大,支持部署应用。

一、Docker之旅的更多相关文章

  1. Docker学习总结(6)——通过 Docker 化一个博客网站来开启我们的 Docker 之旅

    通过 Docker 化一个博客网站来开启我们的 Docker 之旅 这篇文章包含 Docker 的基本概念,以及如何通过创建一个定制的 Dockerfile 来 Docker 化Dockerize一个 ...

  2. OneSQL的docker之旅

      百度盘下载地址: http://pan.baidu.com/s/1v9GWA   OneSQL Docker使用方法:  1. 解压    tar zxvf OneSql-Docker-5.6.2 ...

  3. PHP 开发者的 Docker 之旅

    用 PHP 作为我们「Docker 开发大礼包」开篇是带着一些朝圣的心情的.这是一门堪称「古老」的语言,这也是一门争议最多的语言,这更是一门不断涅槃的语言.「PHP 是最好的语言」这个流传已久的梗,或 ...

  4. Docker(一)Linux开启你的Docker之旅

    前言 Docker容器最早受到RHEL完善的支持是从最近的CentOS 7.0开始的,官方说明是只能运行于64位架构平台, 内核版本为2.6.32-431及以上(即 >= CentOS 6.5, ...

  5. 简单四步開始树莓派上的Docker之旅

    大概这篇博文发表之后,应该算是我个人的第一篇翻译作品了,翻译的可能不是非常到位,望各位看官大刀砍过来. 原文链接:http://resin.io/blog/docker-on-raspberry-pi ...

  6. 用浏览器快速开启Docker的体验之旅

    互联网科技发展创造了很多奇迹,比如我今天要提到的 docker 技术就是其一.我很早就关注它(在2015年写过这方面的博客),那会儿还只是一个开源项目,现在已经是一个行业事实标准了,它推动了云原生的变 ...

  7. ASP.NET Core开发-Docker部署运行

    ASP.NET Core开发Docker部署,.NET Core支持Docker 部署运行.我们将ASP.NET Core 部署在Docker 上运行. 大家可能都见识过Docker ,今天我们就详细 ...

  8. Docker简明教程(转)

    Docker自从诞生以来就一直备受追捧,学习Docker是一件很炫酷.很有意思的事情.我希望通过这篇文章能够让大家快速地入门Docker,并有一些学习成果来激发自己的学习兴趣.我也只是一个在Docke ...

  9. 报名|「OneAPM x DaoCloud」技术公开课:Docker性能监控!

    如今,越来越多的公司开始 Docker 了,「三分之二的公司在尝试了 Docker 后最终使用了它」,也就是说 Docker 的转化率达到了 67%,同时转化时长也控制在 60 天内. 既然 Dock ...

随机推荐

  1. javascript阻止事件冒泡的兼容写法及其相关示例

    //阻止事件冒泡的兼容写法 function stopBubble(e){ //如果提供了事件对象,则是一个非IE浏览器 if(e && e.stopPropagation) //因此 ...

  2. smarty入门

    1 2 3 4 首先要有3个文件夹configs.templates.templates_c,在configs文件夹中有一个配置文件:test.conf,代码:   title = Welcome t ...

  3. Datatable转换Json

    #region Datatable转换为Json        /// <summary>         /// Datatable转换为Json         /// </su ...

  4. A trip through the Graphics Pipeline 2011_05

    After the last post about texture samplers, we’re now back in the 3D frontend. We’re done with verte ...

  5. PHP 标准库 SPL 之数据结构栈(SplStack)简单实践

    PHP 5.3.0 版本及以上的堆栈描述可以使用标准库 SPL 中的 SplStack class,SplStack 类继承双链表 ( SplDoublyLinkedList ) 实现栈. 代码: & ...

  6. php发送post请求到nodejs服务器

    curl_setopt ( $ch, CURLOPT_POSTFIELDS, $data ); 改为 curl_setopt ( $ch, CURLOPT_POSTFIELDS, http_build ...

  7. Install MySQL on Mac by Homebrew

    1.  安装mysql brew update brew install mysql 2. 启动mysql mysql.server start 3. 登录mysql mysql -uroot -p ...

  8. ECSHOP 用户中心 我的订单前台显视订单每张商品图片及收货人

    先在网站根目录打开文件 includes/lib_transaction.php 查找代码 $sql = "SELECT order_id, order_sn, order_status, ...

  9. lsof 命令 系统管理 系统监控

    lsof(list open files)是一个列出当前系统打开文件的工具.在linux环境下,任何事物都以文件的形式存在,通过文件不仅仅可以访问常规数据,还可以访问网络连接和硬件. 在终端下输入ls ...

  10. 如何查看JDK以及JAVA框架的源码

    如何查看JDK以及JAVA框架的源码 设置步骤如下: 1.点 “window”-> "Preferences" -> "Java" -> &q ...