Docker入门(二):安装/卸载

时间:2023-03-08 17:07:39
Docker入门(二):安装/卸载

这个《Docker入门系列》文档,是根据Docker官网(https://docs.docker.com)的帮助文档大致翻译而成。主要是作为个人学习记录。有错误的地方,Robin欢迎大家指正。分为如下几个部分:

1 Docker入门:简介

2 Docker入门:安装/卸载

3 Docker入门:容器(Containers)

4 Docker入门:服务(Services)

5 Docker入门:Swarms

6 Docker入门:Stacks

7 Docker入门:部署app

8 Docker入门:稍高级的话题

2.1 版本及平台简介

Docker有两个主要版本:CE(Community Edition)和EE(Enterprise Edition)。

Docker CE是开发者和小团队的理想选择,可以通过它了解Docker,并体验基于容器的应用程序。本文使用Docker CE。

Docker可以支持许多平台。比如,

(1)桌面系统:MAC/WINDOWS;

(2)云平台:AWS/Azure;

(2)服务器:CentOS/Debian/Fedora/Windows server2016/Red Hat Enterprise Linux等。

本文在CentOS上安装。

2.2 删除老版本

旧的Docker版本被称为docker或docker-engine。如果存在旧版本,就卸载它们及其关联的依赖。

使用如下命令卸载老版本:

$ sudo yum remove docker docker-common docker-selinux docker-engine

卸载后,/var/lib/docker/的内容依然保留,包括映像,容器,卷,和网络配置。

新的Docker包名字为docker-ce。

2.3 安装的三种方式

根据需要,可选择三种方式安装Docker。

  • 很多用户配置Docker仓库,并从仓库中安装Docker,从而简化安装和升级工作。这是推荐方式。本文采用这种方式。
  • 有的用户下载RPM包并手动安装,升级也是手动进行。这种方式适合在无法连接互联网时安装Docker。
  • 在开发/测试环境中,有的用户选择使用自动化脚本来安装Docker。

2.4 安装Docker

采用上述第一种方式(install using the repository)进行安装。采用如下几节步骤。

2.4.1 配置仓库

分为如下步骤:

(1)安装需要的包。yum-utils提供yum-config-manager管理工具;devicemapper存储驱动需要device-mapper-persistent-data和lvm2。

[root@localhost /]# sudo yum install -y yum-utils device-mapper-persistent-data lvm2

Loaded plugins: fastestmirror, langpacks

base                                                                                                         | 3.6 kB  00:00:00

extras                                                                                                       | 3.4 kB  00:00:00

updates                                                                                                      | 3.4 kB  00:00:00

updates/7/x86_64/primary_db                                                                                  | 2.7 MB  00:00:18

Loading mirror speeds from cached hostfile

* base: mirrors.aliyun.com

* extras: mirrors.aliyun.com

* updates: mirrors.tuna.tsinghua.edu.cn

Package yum-utils-1.1.31-42.el7.noarch already installed and latest version

Package device-mapper-persistent-data-0.7.0-0.1.rc6.el7.x86_64 already installed and latest version

Package 7:lvm2-2.02.171-8.el7.x86_64 already installed and latest version

Nothing to do

(2)使用如下命令安装stable仓库:

[root@localhost /]# sudo yum-config-manager \

--add-repo https://download.docker.com/linux/centos/docker-ce.repo

Loaded plugins: fastestmirror, langpacks

adding repo from: https://download.docker.com/linux/centos/docker-ce.repo

grabbing file https://download.docker.com/linux/centos/docker-ce.repo to /etc/yum.repos.d/docker-ce.repo

repo saved to /etc/yum.repos.d/docker-ce.repo

(3)使能/不使能edge仓库和test仓库。本步骤为可选的,略。

2.4.2 安装Docker CE

如果安装Docker CD的最新版本,采用如下命令:

$ sudo yum install docker-ce

警告:如果你使能了多个Docker仓库,使用命令yum install或yum update进行安装或升级时,将会安装最高(新)的版本,这可能不满足你的版本需求。

如果你是第一次通过最新添加的仓库来安装,将会提示接受GPG key,并且该key的fingerprint将会显示出来,只有接受该key,才能继续安装,这个fingerprint要和下面的值匹配:

060A 61C5 1B55 8A7F 742B 77AA C52F EB6B 621E 9F35.

如果要安装Docker CE的特定版本。首先列出可用的版本,并使用命令sort –r进行排序:

$ yum list docker-ce --showduplicates | sort -r

docker-ce.x86_64            17.09.ce-1.el7.centos             docker-ce-stable

列出的内容取决于使能了哪些仓库,并和CentOS的特定版本(由.e17标识)有关。然后选择一个版本安装。第二列是版本号,你可以使用整个字符串,但至少使用到第一个连接符。第三列是仓库名称,用于标识来自于哪个仓库。本示例中的全限定名称为:docker-ce-17.09.ce。安装命令如下:

$ sudo yum install <FULLY-QUALIFIED-PACKAGE-NAME>

2.4.3 启动Docker

使用如下命令启动:

$ sudo systemctl start docker

2.4.4 测试验证

通过运行hello-world映像来验证Docker是否正确安装:

[root@localhost /]# sudo docker run hello-world

Unable to find image 'hello-world:latest' locally

latest: Pulling from library/hello-world

5b0f327be733: Pull complete

Digest: sha256:07d5f7800dfe37b8c2196c7b1c524c33808ce2e0f74e7aa00e603295ca9a0972

Status: Downloaded newer image for hello-world:latest

Hello from Docker!

This message shows that your installation appears to be working correctly.

这个命令会下载一个测试映像,并在一个容器中运行。当容器运行时,将会打印一条信息然后结束。

Docker CE安装运行后,可以使用sudo来运行Docker命令。

2.4.5 查看Docker版本号

[root@localhost /]# docker --version

Docker version 17.09.0-ce, build afdb6d4

2.5 升级Docker CE

采用如上安装步骤来升级Docker CE。

2.6 卸载Docker CE

使用如下命令卸载Docker包:

$ sudo yum remove docker-ce

上面命令只是卸载Docker包,而映像(images)、容器(containers)、卷(volumes)、用户配置的文件并不会从你的主机上自动删除,使用如下命令删除这些东西:

$ sudo rm -rf /var/lib/docker

必须手动删除已编辑的配置文件。