一、安装 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.listUbuntu18.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 multiverseUbuntu18.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 multiverseUbuntu18.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 images2. 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 imagesFAQ
原生 Linux 安装 Docker 方式,Docker 无法实现开机自启和每次 WSL 启动Ip会发生变换
每次重启电脑后给 wsl2 分配的 IP 一般都会变动,我们要连接子系统内部的应用频繁换 IP 会很麻烦,参照别人的解决方法,可以给 Ubuntu 子系统中添加一个新的网卡来给宿主机连接用。
1.查看安装的是哪个子系统发行版本
C:Userscdavid>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.wsl3.在 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 地址了。
暂无评论内容