Docker是什么?怎么安装与配置?
Docker是什么?怎么安装与配置?
一、Docker 是个什么 “箱”?

在开始深入探讨 Docker 之前,我们先来玩一个小小的想象游戏。假设你是一位超级大厨,你要为来自五湖四海、口味各异的食客准备美食。每个食客都有自己独特的要求,有的要低糖,有的要无麸质,还有的要纯素食。要是按照传统的做法,你得在同一个厨房里,同时满足这些五花八门的需求,那场面,简直就是一场混乱的食材与厨具大混战!
这时候,Docker 就像一组神奇的 “烹饪魔法箱” 登场啦!每个箱子都是一个独立的小厨房,里面配备了你做特定美食所需的一切食材、厨具和独特的烹饪秘方。你把这些小厨房(容器)交给食客,不管他们是在家里、办公室,还是在旅途中,只要有能打开这个箱子的工具(Docker 引擎),就能享受到和你在餐厅里做出来一模一样的美味。这,就是 Docker 的魅力所在!
Docker,简单来说,是一个开源的应用容器引擎,它允许开发者将应用程序及其依赖项打包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,甚至实现虚拟化。它就像是一个超级 “集装箱”,把你的应用和它运行所需要的所有东西,比如代码、运行时环境、系统工具、系统库等等,一股脑儿地装进去,形成一个独立的、可执行的软件包。这个软件包可以在不同的环境中运行,而且运行环境几乎是一模一样的,就像你把一个装满宝藏的集装箱,从一艘船搬到另一艘船,从一个港口运到另一个港口,里面的宝藏始终完好无损,保持着原来的样子。
1.1 Docker 与传统虚拟机的区别
你可能会想,这听起来和传统的虚拟机有点像啊,都是在一个大环境里创建小的运行环境。没错,它们确实有相似之处,但 Docker 可有着自己独特的 “秘密武器”,让它在众多虚拟化技术中脱颖而出。
传统的虚拟机,就像是在你的电脑里模拟出另一台完整的电脑,它有自己独立的操作系统、内核、硬件资源等等。这就好比你在一个大房子里,又盖了一个小房子,小房子里啥都有,从水电设施到家具电器,一应俱全。虽然这种方式能很好地实现隔离和环境模拟,但是它的开销可不小。想象一下,你要在大房子里盖好多小房子,每个小房子都要消耗大量的资源,比如空间、电力,而且盖房子(启动虚拟机)的过程也相当漫长。
而 Docker 呢,它更像是在大房子里摆放了一个个的 “模块化房间”,这些房间(容器)共享大房子的水电(操作系统内核),但是每个房间都有自己独立的家具(应用和依赖)。这样一来,Docker 容器启动速度极快,几乎是秒级启动,而且占用的资源非常少,因为它们不需要像虚拟机那样,为每个应用都配备一套完整的操作系统。这就好比你可以在一个大房子里轻松地摆放很多模块化房间,而且这些房间可以随时搭建、随时拆除,非常灵活。
1.2 Docker 在简化开发、部署流程方面的作用
在没有 Docker 的 “黑暗时代”,开发和部署一个应用程序简直就是一场噩梦。开发人员在自己的电脑上开发应用,一切都运行得好好的,但是当把应用交给测试人员或者部署到生产环境时,各种问题就接踵而至。因为不同的环境可能有着不同的操作系统版本、软件依赖库版本,甚至硬件配置也有所不同,这些差异就像一个个隐藏的 “小怪兽”,随时跳出来捣乱,导致应用无法正常运行。开发人员常常无奈地说:“在我这儿能跑啊,怎么到你那儿就不行了呢?” 这种 “环境不一致” 的问题,不仅浪费了大量的时间和精力去排查和解决,还严重影响了项目的进度和质量。
有了 Docker 之后,情况就完全不一样了。开发人员只需要把应用及其依赖项打包成一个 Docker 容器,这个容器就像是一个 “万能宝盒”,里面包含了应用运行所需的一切。不管是在开发环境、测试环境,还是生产环境,只要有 Docker 引擎,这个容器就能像在自己家里一样,自由自在地运行,不会受到外界环境差异的影响。这就好比你把一个装满玩具的盒子交给不同的小朋友,不管他们在哪个房间玩耍,打开盒子就能看到一模一样的玩具,玩得不亦乐乎。
在部署方面,Docker 更是把复杂的部署流程简化到了极致。以前,部署一个应用可能需要执行一系列繁琐的步骤,比如安装各种依赖软件、配置环境变量、设置服务器参数等等,而且这些步骤还很容易出错,尤其是在不同的环境中部署时,每个环境都可能需要进行不同的配置。现在,有了 Docker,你只需要维护一个简单的 Dockerfile 文件,这个文件就像是一个神奇的 “部署说明书”,记录了构建镜像和启动容器所需的所有步骤。通过这个文件,你可以轻松地构建出应用的 Docker 镜像,然后使用简单的命令就可以在任何支持 Docker 的环境中启动容器,完成部署。这就好比你有了一份详细的地图,不管你要去哪个陌生的地方,只要按照地图上的指示走,就能轻松到达目的地,再也不用担心迷路或者走弯路了。
所以说,Docker 就像是软件开发和部署领域的 “超级英雄”,它凭借着独特的容器化技术,解决了传统开发和部署过程中的诸多难题,让开发人员和运维人员的工作变得更加高效、轻松,也让应用程序能够更加稳定、可靠地运行在各种环境中。接下来,就让我们一起深入探索 Docker 的神奇世界,看看它还有哪些令人惊叹的技能吧!
二、Docker 初体验:安装与配置
俗话说得好,“工欲善其事,必先利其器”。在正式开启我们的 Docker 探索之旅前,得先把这个 “神器” 安装到我们的电脑上。别担心,安装过程虽然需要我们稍微费点心思,但只要跟着我一步步来,保证你能顺利搞定!
(一)安装前准备
不同的操作系统,就像是不同风格的房子,Docker 在这些房子里 “安家” 的要求也不太一样哦。
Windows 系统:要是你用的是 Windows 系统,首先得确保你的系统是 Windows 10 64 位专业版、企业版或教育版,或者是 Windows 11 64 位,而且内存至少得有 4GB。这就好比你要邀请一位贵客(Docker)到家里做客,得保证家里有足够大的房间(内存)让贵客住得舒服。另外,还需要启用 Hyper-V 和 WSL 2。Hyper-V 就像是房子里的一个超级魔法空间,能让 Docker 在里面自由自在地施展魔法;WSL 2 则是一座连接 Windows 和 Linux 世界的神奇桥梁,让 Docker 能更好地适应 Windows 的环境。你可以以管理员身份打开 PowerShell,运行相应的命令来启用它们,就像是拿着魔法棒,念出开启魔法空间和桥梁的咒语一样。
Linux 系统:对于 Linux 系统来说,Docker 要求系统的内核版本高于 3.10 ,并且是 64 位操作系统,支持的发行版有 CentOS 7+、Ubuntu 16.04+、Debian 9 + 等等。这就像是不同的 Linux 发行版是不同风格的城堡,Docker 要在这些城堡里住下,城堡得满足一定的规格(内核版本和系统位数)。在安装之前,最好先更新一下系统,把城堡打扫得干干净净,让 Docker 住得更舒心。你可以使用sudo yum update(CentOS 系统)或者sudo apt-get update(Ubuntu 系统)这样的命令来更新系统,就像是拿着扫帚把城堡里的灰尘都扫掉。
macOS 系统:如果你是苹果用户,使用的是 macOS 系统,那么你的 MacOS 版本至少要是 10.13 或更高版本,硬件上至少要有 2GB 的内存。这就好比你的 Mac 电脑是一个精致的小别墅,Docker 要在这个小别墅里搭建它的魔法实验室,别墅得有足够的空间(内存)和合适的环境(系统版本)。在安装前,也没什么特别要准备的,就像是准备迎接一位好朋友,把家里稍微整理一下就好啦。
(二)安装步骤大揭秘
好了,准备工作做完,接下来就是正式安装 Docker!我会详细地告诉你在不同操作系统上的安装步骤。
Windows 系统安装步骤:
- 首先,访问 Docker 官方下载页面(https://www.docker.com/products/docker-desktop ),点击 “Download for Windows” 按钮下载安装程序。
- 下载完成后,会得到一个 Docker Desktop Installer.exe 文件 ,双击这个文件运行安装程序。
- 按照安装向导的提示进行安装,在 Installation Options 中,可以勾选 “Enable WSL 2 feature” 以启用 Windows 子系统 Linux 2(WSL 2),建议选择,它能让 Docker 跑得更顺畅。
- 安装完成后,系统会提示重启计算机,重启后,启动 Docker Desktop 应用。在初次启动时,Docker 会自动初始化并下载所需的镜像。
- 最后,打开命令提示符或 PowerShell,输入docker --version命令验证 Docker 是否正确安装 。如果正确安装,你将看到 Docker 的版本信息。
Linux 系统(以 CentOS 为例)安装步骤:
-
安装必要工具,使用命令sudo yum install -y yum-utils ,这就像是准备一些安装用的小工具,让安装过程更顺利。
-
添加阿里云 Docker 仓库(更快更稳!),运行命令sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo ,如果想用官方源,就把地址替换为https://download.docker.com/linux/centos/docker-ce.repo 。这一步就像是告诉系统从哪里去获取 Docker。
-
安装 Docker 全家桶,执行命令sudo yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin 。
-
启动 Docker 服务,使用sudo systemctl start docker命令 ,并且可以设置开机自启,命令是sudo systemctl enable docker 。
-
同样,通过docker --version命令来验证安装是否成功 。
macOS 系统安装步骤:
-
访问 Docker 官方网站下载 Docker Desktop,选择适合 macOS 的版本进行下载。。
-
下载完成后,找到下载的 Docker.dmg 文件,双击打开它,然后拖动 Docker 图标到 Applications 文件夹中,完成安装。
-
打开 Finder,导航到应用程序,找到 Docker,并双击以启动它。这就像是在应用程序列表里找到 Docker,然后点击打开它。
-
打开终端,输入docker --version命令验证安装是否成功 。如果看到版本号,说明 Docker 已成功安装。
(三)镜像加速器配置
你以为安装完 Docker 就大功告成了?别急,还有一个小秘密武器 —— 镜像加速器,能让你的 Docker 使用体验更上一层楼!
为什么要配置镜像加速器呢?想象一下,你要从国外的一个超级大仓库(Docker Hub)里下载东西,但是这个仓库离你很远,网络又不太好,下载速度就会像蜗牛一样慢,甚至可能会下载失败。而镜像加速器就像是在你家附近开了一个小仓库,里面存着和大仓库一样的东西,你从这个小仓库里下载,速度就会快很多。
以阿里云镜像加速器为例,下面是详细的配置步骤:
- 首先,登录阿里云账号,进入控制台,选择容器镜像服务 。这就像是进入一个超级商场的管理后台,找到专门存放镜像加速服务的区域。
- 在容器镜像服务中,找到镜像加速器,点击进入后,你会看到阿里云为你生成的专属镜像加速器地址 。这就像是商场管理员给你一个专属的快速通道密码。
- 接下来,根据你使用的操作系统,有不同的配置方式。
-
-
Windows 系统:打开 Docker Desktop,进入 “Settings” -> “Docker Engine” ,在 JSON 配置中添加镜像加速器地址,例如:
{
“registry-mirrors”: [“https://你的阿里云加速器地址”]
}
-
然后点击 “Apply & Restart” 保存设置并重启 Docker 。这就像是在 Docker 的设置里输入快速通道密码,然后重新启动 Docker,让它使用这个快速通道。
-
Linux 系统:以 CentOS 为例,使用以下命令创建或编辑 Docker 配置文件:
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-‘EOF’
{
“registry-mirrors”: [“https://你的阿里云加速器地址”]
}
EOF
然后重新加载守护进程配置并重启 Docker 服务:
sudo systemctl daemon-reload
sudo systemctl restart docker
这一系列操作就像是在 Linux 系统里找到 Docker 的配置文件,把快速通道密码写进去,然后通知系统重新加载配置并重启 Docker 服务,让新配置生效。
- macOS 系统:和 Windows 系统类似,打开 Docker Desktop,进入 “Settings” -> “Docker Engine” ,在 JSON 配置中添加镜像加速器地址,然后点击 “Apply & Restart” 保存设置并重启 Docker 。
通过配置镜像加速器,你就能像拥有了一个超级下载神器,让 Docker 镜像的拉取变得又快又稳,为后续的容器化操作提供更加流畅的体验。好了,现在 Docker 已经成功安装并配置好了镜像加速器,我们终于可以真正开始探索 Docker 的奇妙世界啦!
