赞
踩
本文系转载其他博主文章。但是博主在前面需要重点说明一下:
先去看看自己的电脑命令行,打开 powershell 管理员终端,执行wsl --help 命令看看,有没有 wsl,如果有就不用安装了,直接
wsl --set-default-version 2
设置 wsl2 为默认版本就行了。如果本机没有 wsl,再去安装哦在 window 安装 Docker Desktop 之前。先开启虚拟化技术(1. Hyper-V 2.适用于 Linux 的 Windows 子系统 3.虚拟机平台)本文中开启的还有 容器、Windows虚拟机监控程序平台。但是这2个我没有开启,同样是可以的,我使用的是 Window11。没有 Hyper-V 选项的,网上搜索一下如何有这个选项吧。
如果出现闪退问题,那就还是虚拟化服务,没有开启的原因。
如果出现一直卡在 Engine starting,按住 shift 键在桌面任意空白位置右键,打开 Power Shell,并执行如下两行命令
cd "C:\Program Files\Docker\Docker"
./DockerCli.exe -SwitchDaemon
安装好之后,在客户端配置我们自己的仓库和第三方镜像下载地址。
以下为转载内容,部分有变动
作为开发人员,在日常开发中,我们需要在本地去启动一些服务,如:redis、MySQL等,就需要去下载这些在本地去启动,操作较为繁琐。此时,我们可以使用Docker Desktop,来搭建我们需要的服务,直接在容器中去启动即可。
docker官网:https://www.docker.com/
因为docker desktop 是可以部署在windows 上来运行docker的应用服务的,其基于windows 的 Hyper-V
服务和WSL2内核的Windows上创建一个子系统(linux),从而实现其在windows上运行docker。所以电脑上需要开启Hyper-V
服务,和安装WSL2。
开启 Hyper-V 服务:控制面板—程序—程序和功能—启动或关闭Windows功能 中 勾选【Hyper-V】和【容器】选项。
配置完毕后,重启电脑
先去看看自己的电脑命令行,打开 powershell 管理员终端,执行wsl --help 命令看看,有没有 wsl,如果有就不用安装了,直接
wsl --set-default-version 2
设置 wsl2 为默认版本就行了。如果本机没有 wsl,再去安装哦
我们可以从微软官网下载最新版本的wsl2,然后正常打开。
下面这个链接,访问下载,安装更新:
https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi
下载完成后直接双击安装即可
我在windows上下载的是 Docker Desktop,下载地址,点进去根据自己的需要去下载,我是下载的Windows版本的。把下载下来的.exe文件双击打开,如下图所示,直接点击OK即可。
安装完后,会有个对应的小图标。
打开 docker desktop, 如果出现报错如下,报错意思是:是因为我们还需要进行wsl的下载和配置
这里我们用两步来解决这个问题:
1.我们先去系统里查看一下有没有启用Windows的Linux子系统,步骤如下:
控制面板->程序->程序和功能
如果没有的话,我们勾选上,重新启动电脑,打开Docker Desktop 。
2.如果还是没有解决的话。原因就剩一个了就是:
我们使用的wsl2版本很旧,因此需要手动更新。进入 Window PowerShll
,执行命令 wsl --update
如果已经按照过wsl , 打开 docker desktop, 如果出现报错如下,报错意思是:wsl kernel 版本低,需要进行更新。
解决方法:以管理员的身份打开控制台(cmd),并执行命令 wsl --update 进行更新
如上图中提示,wsl 更新成功后,需要对wsl重启后才会更新生效。可以执行 wsl --shutdown 进行关闭wsl (我执行命令后又重启了一下电脑。)
重启后,再次打开 docker desktop即可
如果电脑windows 10 的企业版的话,以上的安装部署就完毕了, 但我在安装windows 10 家庭版的时候,报错。网上查的意思是说 docker 必须安装在win10 企业版本,如果想安装在家庭版本上,需要如下操作: 打开注册表编辑器,在“ 计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion ” 下找到 EditionID ,数值数据改为Professional即可。
配置镜像源:打开Docker ,找到 设置–docker engine 中,添加如下图所示的镜像源地址。
选择Docker
Engine,在其中输入(这里使用的是163的源,如果想要使用其他源可以自行设置,github上有个项目:docker_mirror可以自动检测在你的网络环境下那个源是最快的)
作者提示:最好此处配一个阿里云的加速地址!!!。加速地址参考:https://blog.csdn.net/lzb348110175/article/details/132847035 的docker加速配置
{ "registry-mirrors" : [ "https://h6muxxxx.mirror.aliyuncs.com" // 阿里云加速地址 "https://registry.docker-cn.com", "http://hub-mirror.c.163.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, "features": { "buildkit": true } }
一直转转转,等一会就可以了,不转了就可以了
操作如下(示例):完成安装后,打开软件,点击右上角的设置,将图2中的红框标注部分的选中给取消,然后按照图3进行路径的修改,再返回图2界面,把红框部分选中,并应用即可。
代码如下(示例):在左下角的搜索框中,输出PowerShell,打开PowerShell。输入docker
images命令,出现下图所示即表示安装成功。
点击上图中的容器名称,例如「mysql_cn」,会进入到如下图所示的容器页面。展示了此容器的一些信息和操作按钮,点击「Logs」的tap页,会显示此容器的运行日志。容器日志直接展示在页面上,就方便查看了(一般也可以在后台通过docker命令来查看日志信息。不过命令查看有点麻烦,看起来也不太方便)
terminal 是容器的终端(即已经在容器里面了), 可以在终端上执行一些mysql的命令,进入到mysql 执行sql语句。
一般如果不通过这个终端的话,需要在控制台上先通过docker 命令进入到容器内部,然后再在容器内部使用mysql命令
所以terminal 的好处就是省略了 docker命令进容器的步骤。还是比较方便的。
一个镜像可以启动多个容器,可以设置不同的容器名称,比如为可以启动两个mysql容器这样就有两个mysql容器在运行,两者运行互不干扰。
通过镜像启动一个容器:
如下图,通过镜像启动一个容器时,只配置了容器名和环境变量信息,没有配置端口映射。但是容器也是可以启动的。(个人理解:端口映射的目的是为了其他电脑访问本机的mysql_2 容器时,是通过 本机ip +映射端口来访问的。映射端口 是映射到了 mysql_2容器的端口。这样就可以访问容器中的mysql 了。 但如果容器本身不需要被访问的话,容器自己运行,我通过控制台使用docker 命令来进入到容器内容,使用mysql的命令进入到mysql 中来操作mysql ,也是可以的。)
不过,正常的使用情况是需要配置端口映射的。下图中,端口配置中,有两个端口需要配置端口映射,一个是3306,一个是33060端口。查看一下资料,两个端口是分别使用不同的协议来进行通信的。通常我们使用的都是3306, 所以只配置3306端口的映射即可(在输入框中输入一个端口号,前提是未被占用的端口号; 或者直接输入个0 ,会随机分配一个端口号)。
Search 的搜索框可以直接在这里搜索并且pull 下需要的镜像。
版权声明:本文为CSDN博主「IT小郭.」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/GoodburghCottage/article/details/131413312
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。