文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

详解Windows 利用 WSL2 安装 Docker 的2种方式

2022-11-13 18:15

关注

一、安装 WSL 先决条件

必须运行 Windows 10 版本 2004 及更高版本(内部版本 19041 及更高版本)或 Windows 11。(来自官网的说明)

二、安装 Docker 前的准备

控制面板->程序和功能->启用或关闭Windows功能->勾选 适用于Linux的Windows子系统

重启电脑

打开应用商城搜索 WSL ,可根据自己需求选择安装 Linux 发行版,我这里选择 Ubuntu18.04

安装完成后可在开始菜单里找到快捷方式并启动,第一次运行需要等待安装并设置用户名、密码。

开始更换国内镜像源(注意:如果你选择的不是 Ubuntu18.04,这一步不太一样

WSL 默认源的服务器地址在国外,速度很慢,强烈建议使用国内源,而不同 Linux 发行版镜像源文件地址不一样,比如 Ubuntu 是在 /etc/apt/sources.list,Centos 是在/etc/yum.repos.d/CentOS-Base.repo ,同一 Linux 发行版的不同版本使用的源文件仓库地址也是不一样,这点需要注意。

如果是新手小白朋友,WSL 换源操作可以参考这篇文章:教你如何将WSL系统更换国内源?+固定路径+国内镜像源+详细教程
进入终端,输入以下命令

# 切换到源路径
cd /etc/apt

# 备份 Ubuntu 原始源
cp sources.list sources.list.bak

# 开始换源
sudo vim sources.list

Ubuntu18.04 阿里镜像源

deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse

Ubuntu18.04 中科大镜像源

deb https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse

Ubuntu18.04 清华镜像源

deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse

换源之后,进行更新

# 更新源
sudo apt update

# 更新软件包
sudo apt upgrade

三、Windows 安装 Docker

Windows 安装 Docker 方式分为两种,二选一即可

1. 原生 Linux 安装 Docker 方式

进入之前安装好的 Ubuntu,添加Docker源,依次输入以下命令

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

sudo add-apt-repository \
   "deb [arch=amd64] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu \
   $(lsb_release -cs) \
   stable"

sudo apt update

配置完 Dock而 源之后,开始安装 Docker,命令如下。

sudo apt install -y docker-ce

最后一个步骤,启动 Docker daemon。但是此处有一个问题,WSL2 经过测试无法使用systemctl命令因此我们使用 service 命令启动 Docker daemon。命令如下所示:

sudo service docker start

至此,Docker 在WSL2下安装完毕。

检查 Docker 安装是否正常,可输入以下命令进行检查。

# 检查dockerd进程启动
service docker status
ps aux|grep docker

# 查看 Docker 版本
docker version

# 检查拉取镜像是否正常
docker pull mysql
docker images

2. Docker Desktop for windows方式

Docker 也专门开发了可以使用 WSL2 中的 Docker 守护进程的桌面管理程序, 打开 Docker Desktop WSL2 backend 页面,下载最新的 Docker Desktop for Windows 程序 ,建议下载stable版本。下载地址为:https://www.docker.com/products/docker-desktop

确保 WSL 内的 Dokcer 已经被卸载,在 Linux 子系统执行以下命令

sudo apt remove docker-ce
sudo apt remove docker-ce-cli

启动Docker Desktop for Windows,选择 Settings --> General,启动基于WSL2的引擎复选框(Use the WSL 2 based engine)

在 Resources 的WSL Integration中设置要从哪个 WSL2 发行版中访问 Docker,如下图使用的是 Ubuntu18.04,点击 Apply,重启Docker desktop for Windows。

重启完成后就可以在 WSL2里面使用 docker 命令了。

# 检查dockerd进程启动
service docker status
ps aux|grep docker

# 查看 Docker 版本
docker version

# 检查拉取镜像等正常
docker pull mysql
docker images

FAQ

原生 Linux 安装 Docker 方式,Docker 无法实现开机自启和每次 WSL 启动Ip会发生变换

每次重启电脑后给 wsl2 分配的 IP 一般都会变动,我们要连接子系统内部的应用频繁换 IP 会很麻烦,参照别人的解决方法,可以给 Ubuntu 子系统中添加一个新的网卡来给宿主机连接用。

1.查看安装的是哪个子系统发行版本

C:\Users\cdavid>wsl -l
适用于 Linux 的 Windows 子系统分发版:
Ubuntu-18.04 (默认)

2.在子系统中创建 init.wsl

sudo vim /etc/init.wsl

输入以下内容

#network static ip
ip addr add 192.168.50.28/24 broadcast 192.168.50.255 dev eth0 label eth0:1
#docker start
service docker start

给文件进行授权

sudo chmod +x /etc/init.wsl

3.在 Windows 创建 bat 脚本,输入以下内容,放在 C 盘目录下(哪里都想,不要随手删了就行)。

# 初始化脚本,注意这是 Ubuntu-18.04 和你的发行版本对应
wsl -d Ubuntu-18.04 -u root /etc/init.wsl
# 添加一个网卡
netsh interface ip add address "vEthernet (WSL)" 192.168.50.93 255.255.255.0

在Windows下 输入快捷键 WIN+R 打开运行窗口,输入 shell:startup,该目录下新建 ubuntu.vbs。

set ws=WScript.CreateObject("WScript.Shell")
ws.Run "C:\wsl2-start.bat",0

进入子系统,输入ifconfig, 以后 192.168.50.28 就是 WSL 的固定 IP 地址了。

进入子系统,输入ifconfig, 以后 192.168.50.28 就是 WSL 的固定 IP 地址了。

到此这篇关于Windows 利用 WSL2 安装 Docker 的2种方式的文章就介绍到这了,更多相关WSL2 安装 Docker内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-服务器
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯