zoukankan      html  css  js  c++  java
  • 阿里云cenos 6.5 模板上安装 docker

    本章将介绍在阿里云的 Centos6.5 模板上安装 Docker 以及在 Ubuntu 14.04 模板上安装 Docker 的过程

    Centos 6.5 模板上使用Docker

    首先,通过 ssh 登陆阿里云的server,查看系统版本号号以及内核版本号。

    Welcome to aliyun Elastic Compute Service!
    # lsb_release -a
    LSB Version:    :base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch
    Distributor ID: CentOS
    Description:    CentOS release 6.5 (Final)
    Release:        6.5
    Codename:       Final
    # uname -a
    Linux xxxxxxx 2.6.32-431.23.3.el6.x86_64 #1 SMP Thu Jul 31 17:20:51 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
    

    升级内核

    由于 Docker 推荐使用 3.8 以上内核。所以我们选择使用 YUM 方式来升级内核。

    导入 KEY ,安装软件源。在 YUM 的 ELRepo 源中,有 mainline(3.13.1)、long-term(3.10.28)这 2 个内核版本号。考虑到 long-term 更稳定,会长期更新。所以选择这个版本号。

    # rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
    # yum --enablerepo=elrepo-kernel install kernel-lt -y
    Loaded plugins: security
    base                                                                                                                          | 3.7 kB     00:00
    base/primary_db                                                                                                               | 4.6 MB     00:00
    elrepo                                                                                                                        | 2.9 kB     00:00
    elrepo/primary_db                                                                                                             | 709 kB     00:46
    elrepo-kernel                                                                                                                 | 2.9 kB     00:00
    elrepo-kernel/primary_db                                                                                                      |  20 kB     00:01
    epel                                                                                                                          | 4.4 kB     00:00
    epel/primary_db                                                                                                               | 6.3 MB     00:01
    extras                                                                                                                        | 3.4 kB     00:00
    extras/primary_db                                                                                                             |  29 kB     00:00
    updates                                                                                                                       | 3.4 kB     00:00
    updates/primary_db                                                                                                            | 181 kB     00:00
    Setting up Install Process
    Resolving Dependencies
    --> Running transaction check
    ---> Package kernel-lt.x86_64 0:3.10.59-1.el6.elrepo will be installed
    --> Finished Dependency Resolution
    
    Dependencies Resolved
    
    =====================================================================================================================================================
     Package                         Arch                         Version                                      Repository                           Size
    =====================================================================================================================================================
    Installing:
     kernel-lt                       x86_64                       3.10.59-1.el6.elrepo                         elrepo-kernel                        33 M
    
    Transaction Summary
    =====================================================================================================================================================
    Install       1 Package(s)
    
    Total download size: 33 M
    Installed size: 153 M
    Downloading Packages:
    kernel-lt-3.10.59-1.el6.elrepo.x86_64.rpm                                                                                     |  33 MB     28:58
    Running rpm_check_debug
    Running Transaction Test
    Transaction Test Succeeded
    Running Transaction
    Warning: RPMDB altered outside of yum.
      Installing : kernel-lt-3.10.59-1.el6.elrepo.x86_64                                                                                             1/1
      Verifying  : kernel-lt-3.10.59-1.el6.elrepo.x86_64                                                                                             1/1
    
    Installed:
      kernel-lt.x86_64 0:3.10.59-1.el6.elrepo
    
    Complete!
    

    vi /etc/grub.conf 改动默认的启动内核。新安装的内核一般在第一个,这里把default = 1 改为 default = 0 就好了。

    default=1
    timeout=5
    splashimage=(hd0,0)/boot/grub/splash.xpm.gz
    hiddenmenu
    title CentOS (3.10.59-1.el6.elrepo.x86_64)
            root (hd0,0)
            kernel /boot/vmlinuz-3.10.59-1.el6.elrepo.x86_64 ro root=UUID=94e4e384-0ace-437f-bc96-057dd64f42ee rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet
            initrd /boot/initramfs-3.10.59-1.el6.elrepo.x86_64.img
    title CentOS (2.6.32-431.23.3.el6.x86_64)
            root (hd0,0)
            kernel /boot/vmlinuz-2.6.32-431.23.3.el6.x86_64 ro root=UUID=94e4e384-0ace-437f-bc96-057dd64f42ee rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet
            initrd /boot/initramfs-2.6.32-431.23.3.el6.x86_64.img
    ~
    

    重新启动云主机,查看内核是否升级成功。

    # uname -a
    Linux xxxxxxx 3.10.59-1.el6.elrepo.x86_64 #1 SMP Thu Oct 30 23:46:31 EDT 2014 x86_64 x86_64 x86_64 GNU/Linux
    

    安装 Docker

    安装软件源,安装 Docker 软件。

    # yum install http://mirrors.yun-idc.com/epel/6/i386/epel-release-6-8.noarch.rpm
    # yum install docker-io
    

    启动 Docker

    安装寻常的方法启动 Docker 之后,发现仍然提示有问题。

    # service docker start
    Starting cgconfig service:                                 [  OK  ]
    Starting docker:                                           [  OK  ]
    # docker version
    Client version: 1.2.0
    Client API version: 1.14
    Go version (client): go1.3.3
    Git commit (client): fa7b24f/1.2.0
    OS/Arch (client): linux/amd64
    2014/11/05 21:03:08 Cannot connect to the Docker daemon. Is 'docker -d' running on this host?
    

    使用 docker -d 来查看具体的启动过程。

    # docker -d
    2014/11/05 21:10:56 docker daemon: 1.2.0 fa7b24f/1.2.0; execdriver: native; graphdriver:
    [40a2dcc2] +job serveapi(unix:///var/run/docker.sock)
    [info] Listening for HTTP on unix (/var/run/docker.sock)
    [40a2dcc2] +job init_networkdriver()
    [40a2dcc2.init_networkdriver()] creating new bridge for docker0
    Could not find a free IP address range for interface 'docker0'. Please configure its address manually and run 'docker -b docker0'
    [40a2dcc2] -job init_networkdriver() = ERR (1)
    2014/11/05 21:10:56 Could not find a free IP address range for interface 'docker0'. Please configure its address manually and run 'docker -b docker0'
    

    提示我们没有空余 ip 分配给 docker0 了。

    那我们就使用 --bip 參数来手工分配给 ip 地址。

    比方:

    # docker --bip=192.168.100.1/24 -d &
    [2] 2388
    [root@iZ23pznlje4Z ~]# 2014/11/05 21:16:55 docker daemon: 1.2.0 fa7b24f/1.2.0; execdriver: native; graphdriver:
    [dc6906e7] +job serveapi(unix:///var/run/docker.sock)
    [info] Listening for HTTP on unix (/var/run/docker.sock)
    [dc6906e7] +job init_networkdriver()
    [dc6906e7] -job init_networkdriver() = OK (0)
    2014/11/05 21:16:55 WARNING: Your kernel does not support cgroup swap limit.
    [info] Loading containers:
    [info] : done.
    [dc6906e7] +job acceptconnections()
    [dc6906e7] -job acceptconnections() = OK (0)
    

    这里提示警告 Your kernel does not support cgroup swap limit.。我们能够使用 lxc-checkconfig 来检查。

    # lxc-checkconfig
    Kernel configuration not found at /proc/config.gz; searching...
    Kernel configuration found at /boot/config-3.10.59-1.el6.elrepo.x86_64
    --- Namespaces ---
    Namespaces: enabled
    Utsname namespace: enabled
    Ipc namespace: enabled
    Pid namespace: enabled
    User namespace: missing
    Network namespace: enabled
    Multiple /dev/pts instances: enabled
    
    --- Control groups ---
    Cgroup: enabled
    Cgroup clone_children flag: enabled
    Cgroup device: enabled
    Cgroup sched: enabled
    Cgroup cpu account: enabled
    Cgroup memory controller: enabled
    Cgroup cpuset: enabled
    
    --- Misc ---
    Veth pair device: enabled
    Macvlan: enabled
    Vlan: enabled
    File capabilities: enabled
    
    Note : Before booting a new kernel, you can check its configuration
    usage : CONFIG=/path/to/config /usr/bin/lxc-checkconfig
    

    能够看到 Control groups 项目都是支持的,所以我们临时忽略这个告警。

    測试使用

    由于 Aliyun 的网络直接 pull 官方镜像也不是非常稳定,这里推荐使用Dockerpool 官方站点的标准ubuntu镜像来測试。

    下载镜像,又一次标记镜像。

    # docker pull dl.dockerpool.com:5000/ubuntu:14.04
    # docker images
    REPOSITORY                      TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
    dl.dockerpool.com:5000/ubuntu   latest              5506de2b643b        12 days ago         197.8 MB
    # docker tag 550 ubuntu
    # docker rmi dl.dockerpool.com:5000/ubuntu
    [dc6906e7] +job image_delete(dl.dockerpool.com:5000/ubuntu)
    [dc6906e7] +job log(untag, 5506de2b643be1e6febbf3b8a240760c6843244c41e12aa2f60ccbb7153d17f5, )
    [dc6906e7] -job log(untag, 5506de2b643be1e6febbf3b8a240760c6843244c41e12aa2f60ccbb7153d17f5, ) = OK (0)
    [dc6906e7] -job image_delete(dl.dockerpool.com:5000/ubuntu) = OK (0)
    Untagged: dl.dockerpool.com:5000/ubuntu:latest
    

    启动容器,并測试网络。

    # docker run -ti ubuntu
    root@66ff9a55a4f5:/# ping www.dockerpool.com
    PING www.dockerpool.com (xxx.xxx.xxx.xxx) 56(84) bytes of data.
    ^C64 bytes from 203.195.193.251: icmp_seq=1 ttl=47 time=31.4 ms
  • 相关阅读:
    类中以双下划线開始的方法
    Dynamics CRM2016 新功能之从CRM APP中导出数据至EXCEL
    敏捷项目管理实践
    Hibernate环境搭建
    ubuntu12.04更新软件源时出现校验和不符
    修炼你自己
    http自己定义超时检測方法、主动抛出异常
    sql server 2008安装图解
    Ural 1353 Milliard Vasya's Function(DP)
    待字闺中之构造最大数分析
  • 原文地址:https://www.cnblogs.com/lxjshuju/p/6913807.html
Copyright © 2011-2022 走看看