22年的时候,因为租的房子网络只有100M,下载点电影或者电视剧需要很久,所以就想要一个24小时开机的“服务器”,遂组装了一台小主机。
当时为了省电,特意买了个带T的U:i3-10100T
内存直接怼到了64GB,带了4块机械硬盘,一个月大概15度电。
最开始的系统是centos7,当时要下载电视剧电影,因为大部分是网盘,要不就是迅雷,所以找到几个能用的:
迅雷的docker版本
当时的启动命令:
docker run --name xunlei --restart always --network mynet -p 2345:2345 -v /home/xunlei:/xunlei/data -v /media/a/xunlei:/xunlei/downloads -d --privileged cnk3x/xunlei:latest
内测码是:迅雷牛通
阿里云盘的linux版本
当时的启动命令:
docker run -d --name=aliyunpan-sync --restart always -v "/media/a/sync:/home/app/data" -e TZ="Asia/Shanghai" -e ALIYUNPAN_REFRESH_TOKEN="xxx" -e ALIYUNPAN_DOWNLOAD_PARALLEL=5 -e ALIYUNPAN_PAN_DIR="/sync" -e ALIYUNPAN_SYNC_MODE="download" -e ALIYUNPAN_VERBOSE=1 tickstep/aliyunpan-sync:v0.2.6
取token:JSON.parse(localStorage.getItem("token")).refresh_token
百度网盘的docker版本
当时的启动命令:
docker run --name baidunetdisk --network mynet --restart always -v /home/baidunetdisk:/config -v /media/c/baidunetdisk:/config/baidunetdiskdownload -d johngong/baidunetdisk:latest
这些软件都是属于基本能用状态,但是毕竟不是官方维护,所以有时候根本无法使用。
所以我把linux换成了windows版本,win有个好处就是直接能运行那些网盘app,不需要再费劲心思的找那些linux版本了。
因为是需要24小时开机,非服务器版本的windows怕开久了会卡顿,所以找了官方的Windows Server镜像,安装了Windows Server 2022 Standard
,这下好了,软件生态全了。
但是还有个问题:因本地开发需要,我需要跑一些linux应用,例如mysql,redis等。所以我第一次的尝试是使用WSL的Docker Desktop,除了不支持 --network host
其它还好,但是开机久了发现了问题:内存泄露。不知道为什么 Docker WSL 2 会有内存泄露问题,开机两天后内存占用80%多(不知道现在的版本是否还有这个问题),所以折腾来折腾去重装系统了,重装的系统还是windows,但是docker不用wsl2了,改成了vmware虚拟机里边跑linux,linux安装docker。
linux当时发现centos变成stream了,所以选了
然后直接安装的docker。
虚拟机直接给了32g内存。
网络改成桥接,这样虚拟机就有独立的ip了。
原来的docker deskop可以直接管理docker容器,现在换成了
很少用docker compose,喜欢一行命令
docker run --name portainer --network host --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v /home/portainer:/data -d portainer/portainer-ce:sts
支持host网络直接通过vm的ip访问9000端口就可以进入portainer
OK,基本环境大概就这些,现在这样就基本满足我的需求:
下载:有windows版本的网盘或者下载客户端
基础服务:有docker,可以安装mysql redis什么的。
还有些杂的:
比如搭了个ELK平台收集日志
DDNS-GO做动态DNS等等。