• Docker笔记(三):Docker安装与配置


    原文地址:http://blog.jboost.cn/docker-3.html

    Docker分为Docker CE社区免费版与Docker EE企业收费版。Docker EE主要是在安全性及镜像、容器高级管理方面提供了一些额外的支持。对于中小型企业、团队或个人来说,用Docker CE即可。

    1. 安装Docker CE

    Docker CE有三个更新渠道:

    • Stable:提供最新的GA(General Availability)稳定版,每六个月一版,如 18.09 表示18年9月版,下一版就是19.03——19年3月版
    • Test:提供GA之前的Pre-release版
    • Nightly:提供最新的build版本,每天一版

    我们一般使用stable版。Docker CE支持在多种操作系统下安装,本文只介绍比较常见的Ubuntu 18.04 LTS、CentOS7、及Windows 10上的安装与配置。

    1.1 Ubuntu 18.04 LTS 上安装

    Docker CE支持的64位Ubuntu系统版本为

    • Cosmic 18.10
    • Bionic 18.04 (LTS)
    • Xenial 16.04 (LTS)

    Docker CE在Ubuntu上支持 overlay2, aufs, 以及 btrfs 几种存储驱动程序,对于Linux内核版本为4或以上系统的安装,Docker CE默认使用 overlay2,如果需要使用 aufs,则需要手动配置(参考: Use the AUFS storage driver

    1. 卸载旧版本

    如果系统安装有旧版本,旧版本命名为 docker, docker.io,或docker.engine,可使用如下命令进行卸载

    $ sudo apt-get remove docker docker-engine docker.io containerd runc

    目录/var/lib/docker下的内容,包括镜像、容器、数据卷、网络等,会被保留。 

    2. 使用APT安装

    apt源使用HTTPS来确保软件下载过程中不被篡改,所以首先添加使用HTTPS传输需要的软件包以及CA证书

    $ sudo apt-get update
    $ sudo apt-get install 
        apt-transport-https 
        ca-certificates 
        curl 
        gnupg-agent 
        software-properties-common

    为了确认下载软件包的合法性,添加Docker官方的GPG key: 

    $ curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/
    gpg | sudo apt-key add -

    由于国内网络原因,我们一般要使用国内源,否则安装将会灰常灰常慢。向source.list中添加Docker软件源(以下命令添加的是stable版本的APT镜像源,如果需要test或nightly版,将stable改为对应test或nightly即可) 

    $ sudo add-apt-repository 
    "deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu 
    $(lsb_release -cs) 
    stable"

    然后,便可更新apt软件包缓存,开始安装了 

    $ sudo apt-get update
    $ sudo apt-get install docker-ce

    以上命令默认会安装软件源里的最新版本,如果需要安装指定版本,则可通过查看可用版本,然后指定版本安装,查看版本 

    $ apt-cache madison docker-ce

    安装指定版本

    $ sudo apt-get install docker-ce=<VERSION_STRING>

       

    3. 使用脚本自动安装 

    Docker提供了一个方便的安装脚本来在开发测试环境安装Docker CE的edge或测试版,Ubuntu上可使用这套脚本来安装Docker CE的edge版

    $ curl -fsSL https://get.docker.com -o get-docker.sh
    $ sudo sh get-docker.sh --mirror Aliyun

    4. 启动Docker CE 

    $ sudo systemctl enable docker #开启开机自动启动
    $ sudo systemctl start docker  #启动docker

    5. 用户组配置

    docker命令默认是使用Unix socket与Docker引擎进行通信(回顾下除了Unix socket还有REST API及网络端口),只有root用户或docker用户组里的用户才有权限访问Docker引擎的Unix socket,因此,需要将使用docker的用户加入docker用户组(处于安全考虑,一般尽量不要直接使用root用户来操作)

    $ sudo groupadd docker #添加docker用户组
    $ sudo usermod -aG docker $USER #将当前用户加到docker用户组

    退出账号重新登录即可。 

    6. 测试安装是否成功

    $ docker run hello-world

    如果显示如下图,则说明安装已成功

    hello-docker

    7. 卸载

    $ sudo apt-get purge docker-ce


     以上命令可以卸载docker-ce,但是之前的镜像、容器、数据卷等不会自动删除,可通过如下命令彻底删除

    $ sudo rm -rf /var/lib/docker

    1.2 CentOS 7 上安装

    Docker CE支持64位的CentOS7,并且要求内核版本不低于3.10。CentOS 7满足最低内核的要求,但由于版本较低,一些功能(如 overlay2 存储层驱动)无法使用,并且部分功能可能不太稳定。
    可以通过uname -r命令来查看系统内核版本,如

    [root@iZwz9dbodbaqxj1gxhpnjxZ ~]# uname -r
    3.10.0-957.1.3.el7.x86_64

    1. 卸载旧版本 

    如果安装了旧版本,需要先卸载。旧版本的Docker称为docker或者docker-engine,卸载命令

    $ sudo yum remove docker 
        docker-client 
        docker-client-latest 
        docker-common 
        docker-latest 
        docker-latest-logrotate 
        docker-logrotate 
        docker-selinux 
        docker-engine-selinux 
        docker-engine

    2. 使用yum安装 

    安装依赖包

    $ sudo yum install -y yum-utils 
        device-mapper-persistent-data 
        lvm2

    由于国内网络原因,我们一般要使用国内源,否则安装可能会灰常灰常慢。添加yum软件源 

    $ sudo yum-config-manager 
        --add-repo 
        https://mirrors.ustc.edu.cn/docker-ce/linux/centos/docker-ce
        .repo

    如果要安装nightly或test版,执行如下对应的命令 

    $ sudo yum-config-manager --enable docker-ce-nightly # 启用nightly, 将--enbale改为disable又可以禁用
    $ sudo yum-config-manager --enable docker-ce-test # 启用test

    安装最新版本 

    $ sudo yum makecache fast # 更新软件源缓存
    $ sudo yum install docker-ce # 安装最新版本

    安装指定版本 

    $ sudo yum list docker-ce --showduplicates | sort -r # 列出可用版本
    $ sudo yum install docker-ce-<VERSION_STRING> # 安装指定版本

    3. 使用脚本自动安装 

    执行如下命令,则会自动安装Docker CE的edge版,注意只在开发或测试环境这么用(建议最好还是用stable版)

    $ curl -fsSL get.docker.com -o get-docker.sh
    $ sudo sh get-docker.sh --mirror Aliyun

    4. 启动Docker CE 

    $ sudo systemctl enable docker #开启开机自动启动
    $ sudo systemctl start docker  #启动docker

    5. 用户组配置

    docker命令默认是使用Unix socket与Docker引擎进行通信(回顾下除了Unix socket还有REST API及网络端口),只有root用户或docker用户组里的用户才有权限访问Docker引擎的Unix socket,因此,需要将使用docker的用户加入docker用户组(处于安全考虑,一般尽量不要直接使用root用户来操作)

    $ sudo groupadd docker #添加docker用户组
    $ sudo usermod -aG docker $USER #将当前用户加到docker用户组

    退出账号重新登录即可。 

    6. 测试安装是否成功

    $ docker run hello-world

    如果显示如下图,则说明安装已成功
    hello-docker

    如果在 CentOS 中使用 Docker CE 看到下面的这些警告信息:

    WARNING: bridge-nf-call-iptables is disabled
    WARNING: bridge-nf-call-ip6tables is disabled

    可以添加内核配置参数以启用这些功能。

    $ sudo tee -a /etc/sysctl.conf <<-EOF
    net.bridge.bridge-nf-call-ip6tables = 1
    net.bridge.bridge-nf-call-iptables = 1
    EOF

    然后重新加载 sysctl.conf 即可 

    $ sudo sysctl -p

    7. 卸载 

    $ sudo yum remove docker-ce # 卸载docker-ce
    $ sudo rm -rf /var/lib/docker # 该目录下的镜像、容器、数据卷、网络等不会自动删除

    1.3 Windows 10 上安装

    windows 10上的安装非常简单,直接下载stable版本安装。

    安装完后,在 Windows 搜索栏输入 Docker 点击 Docker for Windows 开始运行

     

    2. 配置国内镜像

    Docker默认是从Docker Hub(官方的镜像仓库)拉取镜像的,国内访问一般会比较慢,因此可以配置一些镜像加速器,很多云服务商提供了自己的加速器服务,如Azure中国,阿里云(需要登录获取),七牛云等。

    Ubuntu、CentOS上,配置国内镜像只需要在/etc/docker/daemon.json中写入如下内容(如果文件不存在则创建一个)

    {
        "registry-mirrors": [
            "https://dockerhub.azk8s.cn",
            "https://reg-mirror.qiniu.com"
        ]
    }

    然后重新启动服务 

    $ sudo systemctl daemon-reload
    $ sudo systemctl restart docker

    对于Windows 10,在系统右下角托盘Docker图标上右键菜单选择 Settings ,打开配置窗口后在左侧导航菜单选择 Daemon 。在 Registry mirrors 一栏中填写加速器地址 https://dockerhub.azk8s.cn ,之后点击Apply 保存, Docker 就会自动重启并应用配置的镜像地址了。

    可以通过docker info命令来检查加速器是否生效,如果执行命令能看到类似如下信息,则说明加速器配置生效了。

    Registry Mirrors:
        https://dockerhub.azk8s.cn/

    3. 总结 

    Docker分Docker CE与Docker EE两个版本,对大多数人来说,一般使用Docker CE就行了。我们在安装Docker CE时,最好安装stable版,比较稳定可靠。同时,Linux安装时,记得配置Docker软件源,不然有可能太慢。安装完后,需要配置镜像加速器,加快镜像的下载速度。工具有了,接下来就是探索实践了,加油吧少年!


    我的个人博客地址:http://blog.jboost.cn
    我的微信公众号:jboost-ksxy (一个不只有技术干货的公众号,欢迎关注,及时获取更新内容)
    —————————————————————————————————————————————

  • 相关阅读:
    kubernetes 中遇见的一些坑(持续更新)
    Docker网络解决方案-Flannel部署记录
    理解Docker :Docker 网络
    全面剖析Redis Cluster原理和应用
    python发送钉钉机器人脚本
    centos 7 部署LDAP服务
    zabbix 同步ldap帐号脚本
    zabbix TCP 连接数监控
    WebDriver基本操作入门及UI自动化练手页面
    Jmeter使用入门
  • 原文地址:https://www.cnblogs.com/spec-dog/p/11194521.html
Copyright © 2020-2023  润新知