⚠你是不是也受够了百度云盘 的几kb的下载速度 ,并且担心隐私安全 。那么不如用家里闲置的电脑🖥 自己搭建一个云盘服务器☁ ,既安全又不花一分钱,妈妈再也不用担心我的隐私发生泄露了。✌再也不用有手机内存焦虑了。
😀小白都能看得懂的搭建步骤,用家里闲置电脑搭建云盘服务器;
一、环境搭建
- 系统:Window11
- 内存:4G+
- 磁盘:500G+(最好不要是系统盘)
很多人家里都是 Windows11 ,但是今天要用到的服务 Nextcloud 是需要运行在Linux上的,没关系,今天就教大家如何在 Windows11 借助 Linux子系统 搭建服务;
开启 Linux子系统 & Hyper-V 步骤
- 打开【控制面板】->【程序】->【启用或关闭Windows功能】
- 勾选【Hyper-V】【适用于Linux的Windows子系统】、
- 重启电脑



安装Linux子系统(wsl2)
- 打开【Microsoft store】
- 搜索 Windows Subsystem for Linux
- 下载安装 Windows Subsystem for Linux
- 下载安装 Ubuntu 20.03.6 LTS
- 等待成功安装后,在开始->所有程序 中就能看到对应的Linux子系统了,初次运行需要输入用户名 和密码。


为Linux子系统设置桥接网络(为了能在局域网中使用别的设备访问)
- 桥接网络需要安装的为wsl2,默认情况下新安装的一般都为wsl2,可通过在cmd或PowerShell中输入命令wsl -l -v 来检查当前wsl的版本;
- 若当前版本为wsl1,则需要先更新wsl
- 输入指令更新
wsl --update
- 输入指令检查版本
wsl --version
- 命令行会输出如下内容
js
WSL version: 0.70.0.0
Kernel version: 5.15.68.1
WSLg version: 1.0.45
MSRDC version: 1.2.3575
Direct3D version: 1.606.4
DXCore version: 10.0.25131.1002-220531-1700.rs-onecore-base2-hyp
Windows version: 10.0.22621.675
- 使用
wsl --set-version <distro name> 2
命令将<distro name>
替换为要更新的 Linux 发行版的名称。 例如,wsl --set-version Ubuntu-20.04 2
会将 Ubuntu 20.04 发行版设置为使用 WSL 2。 - 关闭wsl
wsl --shutdown
在 Hyper-V 管理器中创建虚拟交换机
- 在Windows 11 搜索栏搜索【Hyper-V 管理器】,点击进入
- 运行 Hyper-V 管理器
- 在左侧选择您的电脑
- 在右侧选择虚拟交换机管理器
- 在管理器中选择"新建虚拟网络交换机"
- 在右侧选择"外部"
- 然后单击"创建虚拟交换机"
- 在"名称:"下输入独特的名称,例如"WSL_external"
- 确保选择确切的物理适配器(WiFi、LAN 等),并且由于这很可能是您唯一的适配器,因此选中"允许管理操作系统共享此网络适配器"下的复选框
- 申请、是、确定



创建 WSL 配置文件
- 在 PowerShell 提示符下,继续(如果出现错误,则需要以管理员方式打开)
js
cd ~
New-Item .wslconfig
.\.wslconfig
- 选择文本编辑器以打开文件
- 如果你忘记了你的虚拟交换机的名称,请在PowerShell中运行以下命令:
js
Get-VMSwitch -SwitchType External | Select Name, SwitchType, NetAdapterInterfaceDescription, AllowManagementOS
- 现在像这样添加到您的文件文本中:
.wslconfig
js
[wsl2]
networkingMode=bridged
vmSwitch=WSL_external
启动wsl
- 执行wsl即可启动,若系统安装了多个发行版,则需要指定发行版的名称,如wsl -d Ubuntu
- 检查网络,在终端中输入ifconfig检查IP地址是否和Windows在同一网网段中
- 新开一个cmd窗口,输入ping xx.xx.xx.xx其中xx.xx.xx.xx为上述命令显示的ip地址,例如192.168.1.6,检查是否能够正常连接
- 关闭Linux子系统并重新启动,它应该保持相同的ip地址
js
exit
wsl --shutdown
wsl
ifconfig
设置Windows开机自启动Linux子系统服务
- 在Windows中设置开机启动,开始-运行,输入
shell:startup
- 在打开的文件夹中新建vsb文件,如
wsl.vbs
,输入以下内容
- 在打开的文件夹中新建vsb文件,如
ini
Set ws = CreateObject("Wscript.Shell")
ws.run "wsl -d xxx -u root /etc/init.wsl start", vbhide
#注意,xxx需要替换为你安装的wsl发行版名称,如Ubuntu-20.04
- 保存,重启电脑,不出意外Linux子系统已经启动起来了
二、安装Docker
- 打开命令行终端,输入
wsl
进入Linux - 输入
sudo apt-get update
更新apt - 允许apt通过HTTPS使用存储库
js
sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg \
lsb-release
- 添加Docker的官方GPG密钥
js
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
- 安装docker
js
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
Docker 安装 nextcloud容器
拉取nextcloud
js
sudo docker pull nextcloud
Docker 运行 nextcloud
js
sudo docker run --restart=always --name nextcloud -p 9001:80 -v /home/workSpace/nextcloud/data:/var/www/html/data -d nextcloud
- --restart=always:设置 nextcloud 容器 开机自启动
- --name:设置容器名称为nextcloud
- -p 9001:80 :端口映射,将宿主机9001端口映射到容器中的80端口
- -v /mnt/f/workSpace/nextcloud/data:/var/www/html/data 将容器中项目的data目录映射到本地Windows11 F磁盘的/nextcloud/data目录下方便配置
- -d nextcloud,拉取的镜像名,不指定版本默认拉取最新
查看运行中的容器
js
sudo docker ps
输出下面结果,表示已经正常运行了
三、配置nextcloud
- 打开浏览器,输入 http://localhost:9001/,进入配置页面
- 输入自己的管理员:用户名、密码
- 数据目录不要改,使用默认
- 配置数据库:如果没有特殊需要,选择默认的SQLite,最小型数据库,不需要安装其它的数据路配置
- 点击【安装】等待一小会儿就可以进入系统使用了
- 推荐的应用【点击跳过】
- 到此就完成了nextcloud的常规配置
- 打开wsl终端,输入
ifconfig
查看IP地址,之后就可以在局域网内使用这个ip地址+端口号9001进行访问了,例如:http://192.168.31.117:9001/- 如果ifconfig报错,则执行下面的命令
apt-get install net-tools
安装网络工具
可能会遇到的问题
局域网环境下,内网ip访问nextcloud,提示域名受限制

解决办法,设置nextcloud添加信任域名(白名单)
所有用于访问 Nextcloud 服务器的 URL 都必须在您的 config.php 文件中的trusted_domains 设置下列入白名单。 仅当用户将浏览器指向trusted_domains 设置中列出的URL 时,才允许用户登录Nextcloud。
- 打开wsl 执行
docker exec -it nextcloud bash
进入docker系统内 - 执行
vim config/config.php
,如果报错执行下面的指令安装 vimapt-get install vim -y
- 打开
config.php
后,在trusted_domains => array
节点下添加局域网ip地址,例如
添加成功之后,我们再次在局域网(内网)内通过浏览器访问nextcloud。
🎉🎉🎉到此完整的配置NextCloud的工作就完成了,可以在自己的电脑、手机安装上客户端,并通过输入自己的局域网连接地址进行访问了;
- 客户端下载地址Download and install Nextcloud
- 电脑端用户直接使用网址即可
ios
用户可以直接搜索 nextcloud 下载Android
用户可以点击链接下载:download.nextcloud.com/android/nig...