zoukankan      html  css  js  c++  java
  • 一、Docker之旅

    刚刚接触到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镜像站,功能还是比较强大,支持部署应用。

  • 相关阅读:
    codevs 2021 中庸之道
    bzoj 1227: [SDOI2009]虔诚的墓主人
    cogs 2620. [HEOI2012]朋友圈
    bzoj 3123: [Sdoi2013]森林(45分暴力)
    cogs 1685 魔法森林
    bzoj 1061: [Noi2008]志愿者招募
    poj 1743 Musical Theme
    bzoj 1001: [BeiJing2006]狼抓兔子
    bzoj 4006: [JLOI2015]管道连接
    hdu 5693 D Game
  • 原文地址:https://www.cnblogs.com/ywqbj/p/5711189.html
Copyright © 2011-2022 走看看