Docker、K8s安装

Docker安装(CentOS)

  1. 卸载旧版本 Docker的旧版本被称为docker或docker引擎。如果这些已安装,请卸载它们以及关联的依赖关系。
    1
    2
    3
    4
    5
    6
    7
    8
     sudo yum remove docker \
                       docker-client \
                       docker-client-latest \
                       docker-common \
                       docker-latest \
                       docker-latest-logrotate \
                       docker-logrotate \
                       docker-engine
    
  2. 在CentOS上设置Docker CE存储库
    1
    2
    3
    4
    5
    6
    7
    8
      sudo yum install -y yum-utils \
       device-mapper-persistent-data \
       lvm2
      sudo yum-config-manager \
          --add-repo \
          https://download.docker.com/linux/centos/docker-ce.repo
      #国内阿里源
      sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
    
  3. 安装docker ce
    1
     sudo yum install docker-ce docker-ce-cli containerd.io
    
  4. 启动docker
    1
     sudo systemctl start docker
    

    常用命令

    • 一键停止删除所有容器

    docker stop $(docker ps -q) & docker rm $(docker ps -aq)

遇到的问题及解决方案

  1. docker ps 出现权限问题
    1
     Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.39/containers/json: dial unix /var/run/docker.sock: connect: permission denied
    

    由于 docker 守护进程启动的时候,会默认赋予名字为 docker 的用户组读写 Unix socket 的权限,因此只要创建 docker 用户组,并将当前用户加入到 docker 用户组中,那么当前用户就有权限访问 Unix socket 了,进而也就可以执行 docker 相关命令了

    解决方式:

    1
    2
    3
    4
     sudo groupadd docker     #添加docker用户组
     sudo gpasswd -a $USER docker     #将登陆用户加入到docker用户组中
     newgrp docker     #更新用户组
     docker ps    #测试docker命令是否可以使用sudo正常使用
    
  2. 采用阿里云docker镜像

    阿里的镜像搜索官方地址是 http://dev.aliyun.com/search.html,开发者需要开通阿里开发者帐户,再使用阿里的加速服务,登录后阿里开发者帐户后,在https://cr.console.aliyun.com中查看你的您的专属加速器地址

    1
    2
    3
    4
    5
    6
    7
     sudo tee /etc/docker/daemon.json <<-'EOF'
     {
       "registry-mirrors": ["https://fwz365bp.mirror.aliyuncs.com"]
     }
     EOF
     sudo systemctl daemon-reload
     sudo systemctl restart docker
    

    Rancher-Kubernetes集群安装

安装Rancher+Kubenetes

可参考快速入门

1
 sudo docker run -d  --restart=unless-stopped -p 8080:80 -p 443:443 rancher/rancher:stable

docker实验平台

kubenetes实验平台

kubenetes training

rancher 2.0中文文档

###部署问题排查 Rancher 2.0部署过程中常见问题分析与解决

  1. 部署时出现问题或部署前,可使用下面命令将环境清理干净

    清理docker

    清理文件

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     df -h|grep kubelet |awk -F % '{print $2}'|xargs umount 
     sudo rm /var/lib/kubelet/* -rf
     sudo rm /etc/kubernetes/* -rf
     sudo rm /var/lib/rancher/* -rf
     sudo rm /var/lib/etcd/* -rf
     sudo rm /var/lib/cni/* -rf
     iptables -F && iptables -t nat –F
     ip link del flannel.1
     docker ps -a|awk '{print $1}'|xargs docker rm -f
     docker volume ls|awk '{print $2}'|xargs docker volume rm