一共分为如下几步:
- 安装WSL发行版,如Ubuntu
- 安装Redis
- 配置Redis与WSL
WSL安装
这里有微软官方的文档:https://learn.microsoft.com/zh-cn/windows/wsl/install
但我不建议零基础的这么做。很容易输完一些命令之后,把环境弄得乱七八糟,即使卸载重来,也挽救不了。
可以参考我早期的博客:https://blog.csdn.net/m0_49303993/article/details/128716642
接下来的操作需要用到vim。这对没接触过Linux指令的小伙伴非常不友好。这一步是为了加速后面的操作。
把/etc/apt/sources.list
的文件内容替换如下:
# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
deb http://security.ubuntu.com/ubuntu/ jammy-security main restricted universe multiverse
# deb-src http://security.ubuntu.com/ubuntu/ jammy-security main restricted universe multiverse
# 预发布软件源,不建议启用
# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverse
# # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverse
如果你没有接触过vim,那么请按如下步骤操作:
- 编辑
sources.list
文件:sudo vim /etc/apt/sources.list
- 输入
dG
,除此之外什么都不要做 - 此时文件内容应该已经全部删除了,输入
i
,进入编辑模式 - 把上面的内容复制进去
- 按
ESC
,一般在键盘左上角 - 输入
:wq
,然后回车
直接修改
还有一种简单粗暴的方法,直接从资源管理器修改文件。
这一招可能会提示权限不足。这是因为普通用户默认没有修改这个目录下文件的权限。
可以用wsl -u <Username>
修改默认用户为root,然后尝试修改文件。
安装Redis
Redis官方是不支持Windows的。
如果要直接在Win上运行,可以尝试使用第三方版本:https://github.com/tporadowski/redis/releases
要在Win上体验官方的Redis,可以尝试使用WSL。
bash
sudo apt-get update
sudo apt-get install redis
sudo service redis-server start
配置WSL和Redis
目前只能在WSL的控制台中访问Redis。
如果要在WSL之外访问WSL里面的Redis,需要修改Redis和WSL的配置文件。
修改Redis以支持非本地访问
修改Redis配置文件sudo vim /etc/redis/redis.conf
找到bind 127.0.0.1
并注释掉。注释方式是在那一行前面加个#
。
找到protected-mode yes
,那yes
改成no
。
重启Redissudo service redis-server restart
修改WSL为静态IP以方便访问
WSL每次开机都会为自己随机分配一个新的IP地址。
导致每次访问都需要先查看WSL的IP是啥,很不方便。
输入ipconfig,可以看到,WSL的网卡位于172.22.240.1
。这个地址也会在每次开机后变化,我们需要把它固定下来。
bash
Get-NetAdapter -IncludeHidden 'vEthernet (WSL)' | Get-NetIPAddress | Remove-NetIPAddress -Confirm:$False
New-NetIPAddress -IPAddress 172.22.240.1 -PrefixLength 24 -InterfaceAlias 'vEthernet (WSL)'
Get-NetNat | ? Name -Eq WSLNat | Remove-NetNat -Confirm:$False
New-NetNat -Name WSLNat -InternalIPInterfaceAddressPrefix 172.22.240.0/24;
你可以根据自己的情况,把上面中的ip替换掉:172.22.240.1
通过修改启动命令修改WSL网卡设置
输入sudo vim ~/.bashrc
bash
sudo ip addr del $(ip addr show eth0 | grep 'inet\b' | awk '{print $2}' | head -n 1) dev eth0
sudo ip addr add 172.22.240.2/24 broadcast 172.22.240.255 dev eth0
sudo ip route add 0.0.0.0/0 via 172.22.240.1 dev eth0
sudo sh -c 'echo nameserver 172.22.240.1 > /etc/resolv.conf'
重启电脑后,输入ip addr show eth0
,可见当前Ubuntu的IP被固定在了172.22.240.2
。
在下面的ping命令中,也可以正常访问baidu.com
。
配置Redis端口访问
通过wsl -- hostname -I
查看当前WSL的IP地址。
可以看到,当前的IP就是我们设定好的172.22.240.1
。
在vim中通过斜杠/
搜索requirepass
。
把前面的注释去掉,并把后面的foobared
改为自己想要的密码。
常用命令
- 安装WSL
wsl --install
- 移除WSL
wsl --unregister Ubuntu