Windows系统docker desktop安装(学习记录)

发布于:2025-04-16 ⋅ 阅读:(25) ⋅ 点赞:(0)

目前在学习docker,在网上扒了很多老师的教程,终于装好了,于是决定再装一遍做个记录,省的以后再这么麻烦

一:什么是docker

Docker 是一个开源的应用容器引擎,它可以让开发者打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何支持 Docker 的平台上。容器类似于虚拟机,但更加轻量级,共享宿主机的操作系统内核,启动速度快,资源占用少,便于应用的快速部署和扩展。

二:docker的安装

2.1 开启虚拟化

首先打开任务管理器,进入到性能里CPU界面,查看下方的虚拟化是否已启用,如果显示已禁用,则需要去BIOS中查找与CPU配置或高级选项相关的设置,如“Intel VT”、“Intel VT-x”或“AMD-V”。将虚拟化设置更改为“启用”,然后保存退出就可以了

2.2 打开Hyper-V

打开控制面板,点击程序

点击<<启用或关闭Windows功能>>选项

然后依次勾选<<Hyper-V>>,<<Windows虚拟机监控程序平台>>,<<容器>>,<<适用于Linux的Windows子系统>>,<<虚拟机平台>>

2.3 wsl安装

用管理员身份去运行终端

然后输入命令行打开wsl功能

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

然后打开虚拟机

dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

输入以下命令在 Windows 系统中快速安装并设置WSL,安装 Ubuntu Linux 发行版,方便我们在 Windows 环境下直接使用 Linux 系统和工具。然后你就会进入这个界面,输入你的ubuntu系统名和密码,就完成了

wsl --install -d Ubuntu

验证安装

2.4 docker安装

直接官网搜索docker,也可以直接点我去到下载界面,我下载的这个

下载完成后进行安装

安装完成!重启电脑

2.5 进入docker

选择同意

选择使用推荐设置即默认设置,直接finish

登录docker,这里我使用的GitHub账号进行登录

选择方向

选择想用docker做什么

然后就进到docker主界面了

三:修改镜像

设置国内镜像地址,把原本的代码更替成下面这个代码段

{
  "builder": {
    "gc": {
      "defaultKeepStorage": "20GB",
      "enabled": true
    }
  },
  "experimental": false,
  "features": {
    "buildkit": true
  },
  "registry-mirrors": [
    "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"
  ]
}

更换完之后进行保存

四:查看安装是否成功

在终端内输入命令查看是否安装成功

docker --version

docker 常用命令

查看docker安装
docker ps  或者  ps -ef | grep docker
 
查看docker服务:
systemctl status docke
 
设置开启docker服务:
systemctl enable docker
 
启动docker服务:
systemctl start docker
 
查看mysql镜像
docker search mysql
 
进入容器:
docker exec -it xxx bash

打开ubuntu:

wsl

退出输入:

exit

五:解决报错

我们做完这些之后可能会有下图这个错误

网上查了一下,这个错误通常出现在使用 Docker 与 WSL集成的时候,或者是在尝试获取 Ubuntu 发行版的用户主目录的时候。在我们当前安装的条件下,大概率是由于 WSL 版本不兼容导致的。我们查一下WSL版本,比如我的WSL显示是1,于是我把 WSL 从版本 1 升级到版本 2,这个报错就没出来了

查询当前WSL版本

wsl --list --verbose

在保证我们的系统支持WSL2的前提下,把我们的这个Ubuntu发行版升级到WSL2 

wsl --update
wsl --set-version Ubuntu 2

验证升级是否成功

wsl --list --verbose

此时我们可以看到我的WSL版本已经默认为WSL2了

六:WSL2与docker集成

6.1 启动WSL

由于 Ubuntu 发行版当前处于 Stopped 状态,我们需要启动它

wsl -d Ubuntu

或者直接

wsl

6.2 启用 Docker Desktop 与 WSL 2 的集成

点击 Docker Desktop 的设置图标,选择 Settings ,在 Settings中,进入 Resources > WSL Integration。启用 Enable integration with my default WSL distro 选项。我这边是把与其他发行版的集成启用也给打开了Enable integration with additional distros(个人感觉最好开一下)

6.3 验证WSL2与docker的集成

在 Windows 命令提示符中运行 wsl 或直接从开始菜单启动 Ubuntu。在终端中,运行以下命令来验证 Docker 是否可用

docker --version

输出图中内容,则说明集成成功

6.4 测试集成是否成功

运行一个Docker 容器来测试 

docker run -it --rm hello-world

如果输出类似以下内容,说明 Docker 在 WSL 2 中可以正常运行

6.5 在 WSL 2 中默认使用 Docker Desktop 的 Docker 守护进程,设置环境变量 

6.5.1 在 WSL 2 的终端中,打开或创建 .bashrc 文件

nano ~/.bashrc

6.5.2 在文件末尾添加以下内容

6.5.2.1 使用键盘的箭头键(↑、↓、←、→)移动光标到文件的任意位置。

6.5.2.2 直接在光标位置输入你想要添加的内容。例如,添加以下环境变量:

export DOCKER_HOST="unix:///mnt/wsl/docker-desktop/docker.sock"

 6.5.2.3 按下 ctrl+O(大写英文字母O),然后按下 Enter 键确认保存

 6.5.2.4 按下 Ctrl + X 退出 nano 编辑器

 6.5.3 验证更改

 6..5.3.1 重新加载 ~/.bashrc 文件

source ~/.bashrc

 6.5.3.2 运行以下命令验证环境变量是否设置成功

echo $DOCKER_HOST

 6.5.3.3 如果输出为:unix:///mnt/wsl/docker-desktop/docker.sock 说明环境变量已正确设置。

 以上步骤主要来源:

 2024最新Windows安装docker教程

 Windows 安装docker(详细图解)

 环境搭建-Windows系统搭建Docker