目录
前言
Docker是一种开源的容器化平台,可以让开发者使用容器的形式创建、部署和运行应用程序。容器是一种轻量级的、独立的可执行软件包,包括运行应用程序所需的所有内容,包括代码、运行时、系统工具、库和设置。本文主要介绍了Windows平台下Docker的安装过程,包括安装包下载、自定义安装路径、安装过程、安装后配置和运行验证。
一、Docker安装包下载
Docker安装包直接在官网https://www.docker.com/products/docker-desktop/下载即可,默认下载最新版本,但是最新版本可能存在一些问题,因此可以下载稍微老一点的版本、更加稳定,此时可以到Release Note页https://docs.docker.com/desktop/release-notes/下载指定的版本,例如我这里选择的v4.23.0,链接为https://docs.docker.com/desktop/release-notes/#4230,页面如下,右侧为各个版本,直接点击框中Windows按钮链接下载即可。
二、自定义Docker安装路径、设置到其他盘
Docker在Windows上的默认安装路径为C:\Program Files\Docker
,并且在安装过程中无法进行指定,但是一般安装软件需要安装到其他盘、减少系统盘C盘的占用,此时需要通过类似于Linux系统创建软链接的方式将路径C:\Program Files\Docker
映射到其他盘。步骤如下:
1.打开CMD
Win键+R键快捷打开运行窗口,输入cmd,同时按快捷键CTRL+SHIFT+Enter,即可以管理员身份打开Windows自带的cmd命令行:
注意:需要保证以管理员身份打开命令行,否则执行创建软链接命令时会提示拒绝访问。,无法创建成功。
2.执行命令创建软链接
将默认安装路径C:\Program Files\Docker
链接到其他盘的目录,例如我这里安装到E盘,则可以指定为E:\Docker
,完整的命令如下:
mklink /j "C:\Program Files\Docker" "E:\Docker"
可以根据自己的需要指定要链接到的路径,后面虽然安装路径还是C:\Program Files\Docker
,但是实际上安装文件所在的位置是在自定义的路径(例如E:\Docker
)下。
运行示例如下:
C:\WINDOWS\system32>mklink /j "C:\Program Files\Docker" "E:\Docker"
为 C:\Program Files\Docker <<===>> E:\Docker 创建的联接
此时C:\Program Files
路径下就多了名为Docker的目录,并且标记为链接:
3.创建自定义路径
在创建好软链接后,需要保证自定义路径是存在的,因此如果不存在,需要手动创建该文件夹,我这里就需要在E盘下手动创建好Docker目录,同时尽量保证目录是空的。
4.查看各个盘的使用信息
为了证明Docker确实被安装到其他盘、而非默认的C盘,在安装前 查看各个盘的使用情况,如下:
三、安装Docker
直接双击Docker的安装包进入安装流程:
1.点击OK开始安装
2.进入安装等待界面
这个过程可能时间较长,耐心等待即可。
3.安装完成
点击close按钮即可结束安装流程:
在较新版本的Windows系统可以使用WSL(Windows Subsystem for Linux,适用于Windows的Linux子系统)运行Docker,如果没有安装WSL,较新版本的Docker会在安装Docker的 过程中自动安装WSL。
4.查看验证磁盘占用情况
可以看到,此时C盘占用几乎没有变化,而E盘可用少了3G,即Docker安装文件占了3G空间,相对较大,同时也说明Docker被成功安装到了E盘。
5.重启Windows系统
安装好之后,为了使Docker的各个安装项(包含WSL)生效,需要重启电脑。
四、安装后配置
1.修改镜像保存路径
在使用Docker的时候,会下载很多镜像,但是镜像的默认保存路径还是C盘,需要进行修改。
1.首次运行Docker
点击桌面Docker Desktop图标运行Docker,被迫点击接受条款按钮:
登录注册页,可以登录,也可以直接点击跳过登录:
个人信息可选填,也可直接跳过:
2.进入设置页设置镜像保存路径
点击右上角设置按钮:
进入设置页,点击Resources选项:
可以看到,镜像默认保存路径在C盘。
点击Browse按钮,选择自定义的其他盘路径,可以在之前选择的自定义路径下创建一个子目录wsl,即E:\Docker\wsl
。
操作完成如下:
Docker会自动在选定的目录下增加子目录DockerDesktopWSL。最后点击Apply & restart按钮重启Docker即可生效。
2.自定义镜像源(可选)
因为Docker的默认镜像下载地址为国外,国内下载很慢,因此可以设置国内的镜像地址。
设置页的打开方式与前面类似,进入设置页点击Docker Engine选项,如下:
在默认配置的基础上增加配置如下:
{
"registry-mirrors": [
"https://registry.docker-cn.com",
"http://hub-mirror.c.163.com",
"https://mirror.baidubce.com",
"https://docker.mirrors.ustc.edu.cn",
"https://cr.console.aliyun.com",
"https://mirror.ccs.tencentyun.com"
],
"builder": {
"gc": {
"defaultKeepStorage": "20GB",
"enabled": true
}
},
"experimental": false
}
输入之后同样点击Apply & restart按钮重启Docker使其生效,如下:
设置国内镜像源之后,后面下载镜像速度就会更顺畅。如果可以科学上网,也可以直接跳过该步骤、直接使用科学上网,速度更快。
五、Docker运行验证
在Docker安装配置好之后,可以运行简单的demo进行验证。
1.docker/welcome-to-docker
Docker官方提供了一个简单Demo,即welcome-to-docker,是一个为想要了解Docker的新Docker用户提供的示例项目,可以通过搜索获取。找到对应的镜像之后,可以在图形界面中运行,点击右边的Pull按钮拉取下来、再运行,也可以直接点击Run按钮同时执行下载和运行流程。第1种方式如下:
输入本地端口号如下:
运行成功后,容器页显示如下:
运行启动之后,会将本机的8088端口与容器的80端口进行映射,因此在浏览器中直接输入http://127.0.0.1:8088/或http://localhost:8088/即可访问到Docker的欢迎网站,如下:
显然,此时已经运行成功,完结撒花,说明Docker的安装也是成功的。
除了上面在Docker Desktop图形化界面运行的方式,也可以在命令行中运行:
docker pull docker/welcome-to-docker
docker run -d -p 8088:80 --name welcome-to-docker docker/welcome-to-docker
2.MySQL服务
如果要在本地安装MySQL,可以通过下载MySQL官方的服务端和客户端安装包进行安装,也可以通过集成工具如PHPStudy进行安装,除此之外,也可以使用Docker安装,直接下载MySQL镜像并配置运行即可。步骤如下:
首先拉取MySQL镜像,搜索并点击Pull按钮,如下:
拉取完成后,即可在镜像列表中查看下载下来的MySQL镜像,此时可以点击右侧的运行按钮开始运行,如下:
在弹出的窗口中输入本地端口和root用户密码即可运行MySQL容器:
运作成功后界面如下:
此时可以使用MySQL连接工具进行连接,例如使用数据库可视化软件Navicat(如需绿色版,可点击https://download.csdn.net/download/CUFEECR/15120277进行下载)。创建MySQL连接如下:
输入连接信息,如下:
其中,连接名可以自定义,主机可以是127.0.0.1,也可以是localhost,端口为之前设置的本地端口3306,用户名为root、密码为运行MySQL设置的123456。
输入之后点击测试连接,如果显示连接成功,说明MySQL配置运行成功,本地也连接成功,此时点击确定即可保存连接,可以查看MySQL系统数据库信息,如下:
此时可以看到MySQL自带的各个系统数据库,和下面对应的数据表。此时MySQL镜像下载和运行成功,也进一步说明了Docker成功安装到本地。
上面在图形化界面中的操作也可以通过命令来实现同样的效果:
docker pull mysql
docker run -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql
最后再查看磁盘空间的占用情况:
因为此时不仅下载了镜像文件,还运行了容器,容器运行类似于虚拟环境系统运行,需要有对应的系统文件和运行容器所必需的一系列其他环境文件等,会占用一定的硬盘映像空间,而这个空间比镜像文件的实际大小一般会大很多,因此E盘的占用会显著增加。
总结
Docker提供了一种自动化应用程序的部署方式,并通过允许开发人员在与生产环境相同的环境中工作,简化了开发过程。它在DevOps和云计算环境中广泛使用,用于将应用程序打包、分发和管理到多个服务器和平台上。Docker支持在多种系统进行安装,很多时候需要在Windows本地进行Docker的搭建和测试,而Docker对Windows的支持并不十分友好,因此在安装的过程中如果需要自定义安装路径、使用镜像源等,需要自行配置。但是Docker配置好之后,会大大提升开发的效率,减少很多不必要的软件安装,也会使得部署更加方便。