Win通过WSL配置安装Redis

2023-11-17 10:12:42 浏览数 (1)

一共分为如下几步:

  • 安装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的文件内容替换如下:

代码语言:javascript复制
# 默认注释了源码镜像以提高 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,那么请按如下步骤操作:

  1. 编辑sources.list文件:sudo vim /etc/apt/sources.list
  2. 输入dG,除此之外什么都不要做
  3. 此时文件内容应该已经全部删除了,输入i,进入编辑模式
  4. 把上面的内容复制进去
  5. ESC,一般在键盘左上角
  6. 输入:wq,然后回车

直接修改

还有一种简单粗暴的方法,直接从资源管理器修改文件。

这一招可能会提示权限不足。这是因为普通用户默认没有修改这个目录下文件的权限。

可以用wsl -u <Username>修改默认用户为root,然后尝试修改文件。

安装Redis

Redis官方是不支持Windows的。

如果要直接在Win上运行,可以尝试使用第三方版本:https://github.com/tporadowski/redis/releases

要在Win上体验官方的Redis,可以尝试使用WSL。

代码语言:javascript复制
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。这个地址也会在每次开机后变化,我们需要把它固定下来。

代码语言:javascript复制
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

代码语言:javascript复制
sudo ip addr del $(ip addr show eth0 | grep 'inetb' | 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改为自己想要的密码。

常用命令

  • 安装WSLwsl --install
  • 移除WSLwsl --unregister Ubuntu

0 人点赞