04月02, 2018

探索容器服务 - Docker 安装

先决条件

系统要求
Centos7,这里以RHEL/CENTOS系列的Linux发行版为例。

YUM仓库
必须启用centos-extras,此存储库默认处于启用状态。

卸载旧版本
旧版本的Docker名为dockerdocker-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

安装 Docker CE

在新机器上首次安装 Docker CE 前,你需要设置Docker存储库,然后就可以从存储库中安装或更新Docker了。

设置存储库

1、安装需要的包
yum-utils提供yum-config-manager工具;
device-mapper-persistent-datalvm2devicemapper存储驱动所必需的。

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

2、使用以下命令设置使用stable存储库。
如果你需要edgetest存储库,也是用这个repo文件。

# 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

注:附加说明

# 阿里云经典网络ECS使用
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce-internal.repo

# 阿里云VPC网络ECS使用
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce-vpc.repo

# 通用的公网请求加速使用(阿里/科大 等国内加速地址皆可)
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
https://mirrors.ustc.edu.cn/docker-ce/linux/centos/docker-ce.repo

3、可选:启用edgetest存储库
这两个存储库也包含在docker-ce.repo文件中,默认是禁用的,可以用下面的命令启用/禁用它们

sudo yum-config-manager --enable docker-ce-edge
sudo yum-config-manager --enable docker-ce-test

# 重新禁用
sudo yum-config-manager --disable docker-ce-edge

安装 Docker

1、安装最新版,或者跳到下一步安装指定版

sudo yum install docker-ce

2、安装指定版
在生产系统上,您应该安装特定版本的docker ce,而不是始终使用最新版本。列出可用的版本。此示例使用sort -r命令将结果按版本号排序,从最高到最低并被截断。

yum list docker-ce --showduplicates | sort -r
docker-ce.x86_64            18.03.0.ce-1.el7.centos             docker-ce-stable
……

# FULLY-QUALIFIED-PACKAGE-NAME
# 如:docker-ce-17.12.1.ce-1.el7.centos
sudo yum install <FULLY-QUALIFIED-PACKAGE-NAME>

3、启动 Docker

sudo systemctl start docker

4、验证
通过运行hello-world镜像来验证docker是否正确安装。

sudo docker run hello-world

安装后步骤

配置non-root用户管理 Docker

# 创建 docker 组
sudo groupadd docker

# 添加普通用户到docker组
sudo usermod -aG docker $USER

# 重新登录该普通用,不加 sudo 执行命令以验证结果
docker run hello-world

镜像加速器

国内从 Docker Hub 拉取镜像有时会遇到困难,此时可以配置镜像加速器。Docker 官方和国 内很多云服务商都提供了国内加速器服务,例如:

配置方法

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://registry.docker-cn.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

卸载 Docker CE

1、卸载Docker安装包

sudo yum remove docker-ce

2、主机上的 images,containers,volumes 或自定义配置文件不会自动删除。如需删除执行:

sudo rm -rf /var/lib/docker

参考资料

本文链接:https://fandenggui.com/post/explor-docker-install.html

-- EOF --

Comments