前言
本栏目的顺序是先带大家完成一遍docker-desktop的安装后,再给大家介绍docker-desktop的相关知识。先让大家有一个整体的概念和印象,然后再分别对其中的概念做相关讲解,希望这样能够顺利带大家了解docker-desktop
内容大概有这些,会分期发布
- docker 概述
- docker 安装
- docker 命令
- docker 镜像
- 容器数据卷
- dockerfile
- docker网络原理
- docker-compose
以上内容不会面面俱到,总任务是以南昌航空大学软件学院数据科学与大数据专业 “实时计算”这门课程为前提,介绍与其课程相关的Docker内容,为后续的集群搭建等任务做好些许铺垫。
docker-desktop 安装
docker-desktop下载官网:Install Docker Desktop on Windows | Docker Docs
一、下载Docker-Desktop
1、进入官网后,点击蓝色图标直接下载最新版本即可
2、下载后双击.exe文件
其中第一项为开启WSL 2的虚拟化,WSL 2和Hyper-V都是虚拟化相关的技术,在这里勾选,并不是说要用WSL 2取代Hyper-V,更准确的来说,是使用内置了Hyper-V虚拟技术的WSL 2,在下面的配置过程中会体现这个思想。Docker原先本来就是只在linux系统下进行生产的,后来docker能够在windows环境下使用也是得益于WSL技术的发展,WSL 2的全称为 Windows Subsystem for Linux 2,也就是Windows下的子系统linux。所以在这里勾选WSL 2的目的就是搭建一个docker可在Windows下运行的环境。
Docker默认的安装路径就是在C盘,如果要修改默认路径是做不到的,只能通过链接的办法来近似达到差不多的效果,在本文章中不做介绍,有兴趣的同学可自行研究,但建议Docker的默认路径不要修改。
二、配置Docker基础的运行环境
1、安装完毕之后先不要着急点开Docker运行,在控制面板中找到以下页面并依次进入
在其中需要勾选的内容有
1、Hyper-V(本教程的电脑使用的windows11-专业版,这个可能在Windows-家庭版中没有,只有在专业版或者其他更改版本中有,但没有也没有关系,没有就不勾选,以下容器选项也是相同),Hyper-V这个功能其实在Windows-家庭版中也是有的,只不过专业版中的功能更全,有一个专门的勾选项,Windows-家庭版中WSL 2内置的Hyper-V也能够满足需求。
2、容器(Windows-家庭版中也没有,同上处理,勾选与否对新手来说基本没有影响)
3、Windows虚拟机监控程序平台
4、虚拟机平台
5、适用于Linux的Windows子系统
2、接下来还需要在Windows中安装一个Linux子系统,建议可以直接使用微软商店搜索下载,方便。
选择其中企鹅头像的下载即可,其他的可不必下载,下载了目前也用不上。
3、做完以上准备工作后,在桌面点击运行docker-desktop
4、接着点击 选择“Continue without signing in”不注册的原因是目前在国内也无法注册成功,docker-hub官网在2023年的五月左右就已经停止对中国大陆提供服务,所以docker-hub的官网我们大部分人是无法进入的。也正是docker-hub官网无法进入,这会导致docker拉取镜像失败,所以在后续的步骤中我们还需要配置镜像加速器才行。
5、进入之后估计大部分同学的docker页面会有三个状态,1、报错,wsl 2 installation,2、报错,wsl kernel 版本低 ,3、页面在不停转圈圈,最后告诉你docker-engine启动失败。
问题一:wsl 2 installation
原因:没有勾选Linux子系统,
解决方法:依照以上的配置步骤在Windows功能中勾选“适用于Linux的Windows子系统”即可
问题二:wsl kernel 版本低
原因:从微软商店安装的WSL的版本为1,而不是WSL 2,(从微软商店直接下载基本上就是WSL 1)
解决方法:Win+R调出运行窗口,在其中输入powershell
在命令行中输入:WSL --update。等待更新完毕即可
以上我的情况是我本身已经安装好了且是最新的WSL 2,且我的Linux使用的Ubuntu。
正常情况如下
问题三:页面在不停转圈圈,最后告诉你docker-engine启动失败
这个问题一般在以上两个问题都解决了的情况下会自行解决,如依旧为解决,采取以下措施可能有效
Win + R调出运行窗口,输入:services.msc
在其中找到Docker Desktop Service,将其启动或者重启动,之后重新启动docker
经过以上三个问题情况,已经能够解决90%的特殊情况,剩余的10%就是其他的一些鸡毛蒜皮的小问题了。
6、成功进入docker页面如下
7、这时你迫不及待想在搜索框中搜索镜像名,比如mysql、redis、zookeeper等等,你会发现无法搜索到,除非你使用了魔法,不然是不可能搜索到任何镜像的。
这个原因就是上面讲过的,docker-hub官网已经停止了对中国大陆的相关服务,所以在docker-destop中无法搜索到任何镜像,解决方法就是配置一个镜像加速。
三、配置镜像加速
1、在网页中搜索阿里云,并使用自己的支付宝登陆或注册阿里云
2、登录之后搜索ACR,点击立即开通
3、开通以后,依次点击镜像工具、镜像加速器、Windows,最后一个红框框的就是阿里云提供的加速器地址,可以免费使用,复制阿里云的镜像地址"registry-mirrors": ["https://123456aaa.mirror.aliyuncs.com"]
4、在docker中点击右上角的设置,再点击docker engine
5、修改其中内容如下所示:
{
"builder": {
"gc": {
"defaultKeepStorage": "20GB",
"enabled": true
}
},
"registry-mirrors": ["https://123456aaa.mirror.aliyuncs.com"],
"experimental": false
}
6、点击应用并重新启动
四、测试Docker是否能正常使用
1、重新启动后,你会发现在docker的搜索框中依旧无法搜索
2、没关系,Win+R调出运行窗口,输入:powershell,在命令行中输入:
docker pull hello-world
3、在回到docker的可视化界面中,就能看到你刚拉取下来的hello-world镜像
4、点击镜像行右侧的三角形即可运行该镜像,并在container中可观察到容器已启动。
5、该容器名可填可不填,直接run即可
出现Hello from Docker即表明docker-desktop在本机中安装成功且能正常使用!
以上只是完成了docker学习的第一步,后续docker的学习请继续关注我的博客,近段时间将会继续更新docker的内容。
本文章引用了CSDN IT小郭.的以下文章,其中有除docker安装外的其他内容,也很精彩。
如果对相关问题依旧存有疑问,欢迎大家在评论区留言交流。如果内容存在错误、不足和改进,欢迎大家多批评指正,这对我们都很重要!
联系:
QQ:106672998
微信:hsh241817