Docker:安装
跳到导航
跳到搜索
关于
Docker 可以安装运行在多种系统上。
Docker 需要用户具有 sudo 权限,为了避免每次命令都输入sudo,可以把用户加入 Docker 用户组:
$ sudo usermod -aG docker $USER
CentOS
Docker 支持以下的 64 位 CentOS 版本:
- CentOS 7
- CentOS 8
自动安装
可以使用安装脚本自动安装。
- 官方安装脚本:
curl -fsSL https://get.docker.com | bash -s docker --mirror aliyun
- 国内 daocloud 一键安装命令:
curl -sSL https://get.daocloud.io/docker | sh
手动安装
卸载旧版本
较旧的 Docker 版本称为 docker 或 docker-engine 。如果已安装这些程序,请卸载它们以及相关的依赖项:
$ sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
设置 Docker 仓库
在新主机上首次安装 Docker Engine-Community 之前,需要设置 Docker 仓库。
之后,您可以从仓库安装和更新 Docker。
- 安装所需的软件包:
- yum-utils 提供了 yum-config-manager ,并且 device mapper 存储驱动程序需要 device-mapper-persistent-data 和 lvm2。【???】
$ 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
- 清华大学源:
$ sudo yum-config-manager \ --add-repo \ https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo
- 使用官方源地址(比较慢):
安装最新版 Docker Engine-Community
安装最新版本的 Docker Engine-Community 和 containerd,或者转到下一步安装特定版本:
$ sudo yum install docker-ce docker-ce-cli containerd.io
- 如果提示您接受 GPG 密钥,请选是。
- Docker 安装完默认未启动。并且已经创建好 docker 用户组,但该用户组下没有用户。
有多个 Docker 仓库吗? : 如果启用了多个 Docker 仓库,则在未在 yum install 或 yum update 命令中指定版本的情况下,进行的安装或更新将始终安装最高版本。(这可能不适合您的稳定性需求)
什么是 containerd.io
Containerd 是一个工业级标准的容器运行时,它强调简单性、健壮性和可移植性。Containerd 可以在宿主机中管理完整的容器生命周期:容器镜像的传输和存储、容器的执行和管理、存储和网络等。
详细点说,Containerd 负责干下面这些事情:
- 管理容器的生命周期(从创建容器到销毁容器)
- 拉取/推送容器镜像
- 存储管理(管理镜像及容器数据的存储)
- 调用 runC 运行容器(与 runC 等容器运行时交互)
- 管理容器网络接口及网络
注意:Containerd 被设计成嵌入到一个更大的系统中,而不是直接由开发人员或终端用户使用。
docker 对容器的管理和操作基本都是通过 containerd 完成的:
安装指定版本 Docker Engine-Community
要安装特定版本的 Docker Engine-Community,请在存储库中列出可用版本,然后选择并安装:
- 列出并排序您存储库中可用的版本:
- 此示例按版本号(从高到低)对结果进行排序。
$ yum list docker-ce --showduplicates | sort -r docker-ce.x86_64 3:18.09.1-3.el7 docker-ce-stable docker-ce.x86_64 3:18.09.0-3.el7 docker-ce-stable docker-ce.x86_64 18.06.1.ce-3.el7 docker-ce-stable docker-ce.x86_64 18.06.0.ce-3.el7 docker-ce-stable
- 通过其完整的软件包名称安装特定版本:
- 软件包名称是软件包名称(docker-ce)加上版本字符串(第二列),从第一个冒号(:)一直到第一个连字符,并用连字符(-)分隔。例如:docker-ce-18.09.1。
$ sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io
- 启动 Docker:
$ sudo systemctl start docker
- 验证安装:
- 通过运行 hello-world 映像来验证是否正确安装了 Docker Engine-Community;
$ sudo docker run hello-world
卸载 docker
- 删除安装包:
yum remove docker-ce
- 删除镜像、容器、配置文件等内容:
rm -rf /var/lib/docker