zoukankan      html  css  js  c++  java
  • centos7下docker二进制安装

    问题描述:

      内网离线环境下,安装docker.二进制来的还是快点,或者内网搭建yum的epel仓库!

    环境:

     centos7.x

     docker-18.9.0 x86_64  static //二进制

    解决方法:

    1、download:

      https://download.docker.com/linux/static/stable/x86_64/

    2、kernel ack

    [root@lab-210 ~]# uname -r     //kerner3.10.+   centois7.x 内核都是3.10+,此举只是为了验证
    3.10.0-862.el7.x86_64

    3、setup

    docker-18.06.1-ce.tgz

    tar zxf docker-18.06.1-ce.tgz && mv docker/* /usr/bin/ && rm -rf docker*.tgz    //解压切移动binary到 /usr/bin

    注意:如果移动到别的目录有点问题,systemctl脚本启动不起来,具体原因还在寻找中

    4、systemd docker.service

    vim /etc/systemd/system/docker.service
    [Unit]
    Description=Docker Application Container Engine
    Documentation=https://docs.docker.com
    After=network-online.target firewalld.service
    Wants=network-online.target
     
    [Service]
    Type=notify
    # the default is not to use systemd for cgroups because the delegate issues still
    # exists and systemd currently does not support the cgroup feature set required
    # for containers run by docker
    ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock
    ExecReload=/bin/kill -s HUP $MAINPID
    # Having non-zero Limit*s causes performance problems due to accounting overhead
    # in the kernel. We recommend using cgroups to do container-local accounting.
    LimitNOFILE=infinity
    LimitNPROC=infinity
    LimitCORE=infinity
    # Uncomment TasksMax if your systemd version supports it.
    # Only systemd 226 and above support this version.
    #TasksMax=infinity
    TimeoutStartSec=0
    # set delegate yes so that systemd does not reset the cgroups of docker containers
    Delegate=yes
    # kill only the docker process, not all processes in the cgroup
    KillMode=process
    # restart the docker process if it exits prematurely
    Restart=on-failure
    StartLimitBurst=3
    StartLimitInterval=60s
     
    [Install]
    WantedBy=multi-user.target
    

    5、grant privilege  

    chmod +x /etc/systemd/system/docker.service

    systemctl daemon-reload   //重载systemd下 xxx.service文件
    systemctl start docker       //启动Docker
    systemctl enable docker.service   //设置开机自启

    6、testing  docker

    systemctl status docker   //查看Docker状态
    docker -v                       //查看Docker版本

    附录centos7.x安装脚本  install.sh

    #!/bin/bash
    set -x
    
    #var
    unamer=`uname -r |cut -d'.' -f1-2`
    
    #kernel 3.10+
    if [[ $unamer -lt 3.10 ]];then
    	echo "the linux kernel too lower" && exit 8
    fi
    
    #setup
    tar zxf  docker-18.06.1-ce.tgz && mv docker/* /usr/bin/ && rm -rf docker*
    
    #systemd config
    cat >/etc/systemd/system/docker.service <<-EOF
    [Unit]
    Description=Docker Application Container Engine
    Documentation=https://docs.docker.com
    After=network-online.target firewalld.service
    Wants=network-online.target
     
    [Service]
    Type=notify
    # the default is not to use systemd for cgroups because the delegate issues still
    # exists and systemd currently does not support the cgroup feature set required
    # for containers run by docker
    ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock
    ExecReload=/bin/kill -s HUP $MAINPID
    # Having non-zero Limit*s causes performance problems due to accounting overhead
    # in the kernel. We recommend using cgroups to do container-local accounting.
    LimitNOFILE=infinity
    LimitNPROC=infinity
    LimitCORE=infinity
    # Uncomment TasksMax if your systemd version supports it.
    # Only systemd 226 and above support this version.
    #TasksMax=infinity
    TimeoutStartSec=0
    # set delegate yes so that systemd does not reset the cgroups of docker containers
    Delegate=yes
    # kill only the docker process, not all processes in the cgroup
    KillMode=process
    # restart the docker process if it exits prematurely
    Restart=on-failure
    StartLimitBurst=3
    StartLimitInterval=60s
     
    [Install]
    WantedBy=multi-user.target
    EOF
    
    #start
    chmod +x /etc/systemd/system/docker.service
    systemctl daemon-reload && systemctl start docker && systemctl enable docker.service	
    
    #testing
    systemctl status docker && docker -v
  • 相关阅读:
    团体程序设计天梯赛-练习集-L1-039. 古风排版
    团体程序设计天梯赛-练习集-L1-038. 新世界
    团体程序设计天梯赛-练习集-L1-037. A除以B
    团体程序设计天梯赛-练习集-L1-036. A乘以B
    团体程序设计天梯赛-练习集-L1-035. 情人节
    团体程序设计天梯赛-练习集-L1-034. 点赞
    团体程序设计天梯赛-练习集-L1-033. 出生年
    团体程序设计天梯赛-练习集-L1-032. Left-pad
    团体程序设计天梯赛-练习集-L1-031. 到底是不是太胖了
    团体程序设计天梯赛-练习集-L1-030. 一帮一
  • 原文地址:https://www.cnblogs.com/xiaochina/p/10469715.html
Copyright © 2011-2022 走看看