最新开源一款轻巧且功能齐全的跨平台网盘程序:蓝眼云盘
源码简介:
最近发现了一个不错的网盘程序蓝眼云盘,该程序后端使用golang开发,前端使用vue套件开发,而且开源免费,基本上目前除了离线下载外,其它功能都有,同时也支持多用户,超级管理员可以对用户进行权限,文件管理等,外观也蛮好看,安装包仅10M左右,可以同时在Windows、Linux、Mac OS操作系统中运行。作者更新也很频繁,功能也会越来越多,这里就大概说下安装方法。
源码截图:
特色功能:
软件体积小,跨平台,运行简单,自带UI引导安装。
蓝眼云盘主要支持PC Web端,同时手机Web也具有不错的响应性支持。
蓝眼云盘实现了一些云盘的核心功能:文件夹管理,文件管理,上传文件,下载文件,文件分享等。
蓝眼云盘提供能账号管理系统,超级管理员可以管理用户,查看用户文件,普通用户只能查看自己的文件,修改自己的资料。上面提供的体验账号就是一个普通用户的账号。
云盘自带监控大盘,一个页面查看云盘访问情况,每日访问情况,每日PV,UV一目了然。日环比,周环比数据清晰呈现。还可以追踪到每个ip的访问,下载情况
支持常用文件(doc、ppt、xls、pdf、mp3、mp4、jpg、png等格式)一键预览,方便快捷。且最多支持1000个文件同时进行上传。
蓝眼云盘提供了编程接口,实现了云存储(如七牛云,阿里云OSS)的核心功能,可以使用编程接口上传文件,作为其他网站、系统、app的资源存储器。可以在下载图片时对图片做缩放裁剪处理,可以有效地节省客户端流量。同时对于缩略图有缓存策略,全面提升资源访问速度。
前后端分离,文档丰富项目后端使用golang开发,前端使用vue套件开发。有详细的后台api文档,对于学习前端的童鞋而言可以快速部署一个正式而又具有丰富接口的后端供学习使用。
安装方法:
Github地址:https://github.com/eyebluecn/tank
系统支持:Windows、Linux、Mac OS,这里只说Linux系统安装。
由于该网盘需要用到Mysql数据库,所以这里使用比较简单的宝塔面板安装,当然你也可以使用其它方法安装Mysql,比如:OneinStack和LNMP,都支持单独安装Mysql。
1、安装宝塔:
#CentOS系统
wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh
#Ubuntu系统
wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh
#Debian系统
wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && bash install.sh
安装完成后,进入面板,点击左侧软件管理,只需要安装Mysql就可以了,如果你想给网盘设置域名访问,那就再装一个Nginx。
2、运行云盘:
#直接下载编译好的最新版文件,下载地址:https://github.com/eyebluecn/tank/releases
wget https://tank.eyeblue.cn/api/alien/download/04a81a27-b842-4ae0-5431-aeb4b9b5e718/tank-2.0.0.linux-amd64.tar.gz
#解压文件
tar zxvf tank-2.0.0.linux-amd64.tar.gz && rm -rf tank-2.0.0.linux-amd64.tar.gz
#后台运行程序
screen -dmS tank tank*/tank
然后使用http://ip:6010就可以访问并安装网盘了,如果访问不了可能还需要访问宝塔的安全,打开端口即可。对于阿里云,GCP还需要去服务器面板开启端口。
如果你要修改访问端口,可以去解压后的tank目录,修改conf/tank.json文件就可以了。
3、开机自启:
这里使用Systemctl守护进程,只适用于CentOS 7、Debian 8+、Ubuntu 16+。
#以下是一整条命令,一起复制到SSH客户端运行 cat > /etc/systemd/system/tank.service <<EOF
[Unit]
Description=tank
After=network.target
Wants=network.target
[Service]
Type=simple
PIDFile=/var/run/tank.pid
ExecStart=/root/tank-2.0.0/tank
RestartPreventExitStatus=23 Restart=always
[Install]
WantedBy=default.target
EOF
开始启动:
systemctl start tank
查看状态:
systemctl status tank
设置开机自启:
systemctl enable tank
Docker安装:
1、安装Docker:
#CentOS 6 rpm -iUvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
yum update -y
yum -y install docker-io
service docker start
chkconfig docker on #CentOS 7、Debian、Ubuntu curl -sSL https://get.docker.com/ | sh
systemctl start docker
systemctl enable docker.service
2、拉取镜像:
#拉取云盘镜像 docker run -d –name tank \
-v ~/tank/dir:/go/bin/matter \
-p 6010:6010 \
eyeblue/tank:2.0.0 #拉取Mysql镜像,记得修改数据库信息 docker run –name mysqltank -d \
-p 3306:3306 \
-e MYSQL_ROOT_PASSWORD=123456 \
-e MYSQL_DATABASE=tank \
-e MYSQL_USER=tank \
-e MYSQL_PASSWORD=tank123 \
-v ~/tank/mysql:/var/lib/mysql \ mysql:5.7
其中~/tank/dir为上传文件夹存放目录,mysql为数据库信息,然后使用http://ip:6010就可以访问网盘了。然后这里需要注意的是MySQL Host需要填上你的ip地址,而且数据库端口,比如3306需要防火墙放行,不然会连接不上。
域名反代:
反代可以用Nginx、Caddy,如果使用宝塔手动安装的可以直接安装Nginx进行反代设置,如果使用Docker或者网站无Nginx等环境的建议使用Caddy。
1、宝塔反代
先进入宝塔面板,然后点击左侧网站,添加站点,然后再点击添加好了的域名名称,这时候就进入了站点配置,点击反向代理,目标URL填入http://127.0.0.1:6010,再启用反向代理即可。至于启用SSL的话,直接在站点配置就可以启用。
2、Caddy反代
安装Caddy:
wget -N –no-check-certificate https://raw.githubusercontent.com/ToyoDAdoubiBackup/doubi/master/caddy_install.sh && chmod +x caddy_install.sh && bash caddy_install.sh #备用地址 wget -N –no-check-certificate https://www.moerats.com/usr/shell/Caddy/caddy_install.sh && chmod +x caddy_install.sh && bash caddy_install.sh
配置Caddy:
#以下全部内容是一个整体,请修改域名后一起复制到SSH运行! #http访问,该配置不会自动签发SSL echo “moerats.com {
gzip
proxy / 127.0.0.1:6010 {
header_upstream Host {host}
header_upstream X-Real-IP {remote}
header_upstream X-Forwarded-For {remote}
header_upstream X-Forwarded-Proto {scheme}
}
}” > /usr/local/caddy/Caddyfile #https访问,该配置会自动签发SSL,请提前解析域名到VPS服务器 echo “moerats.com {
gzip
tls [email protected]
proxy / 127.0.0.1:6010 {
header_upstream Host {host}
header_upstream X-Real-IP {remote}
header_upstream X-Forwarded-For {remote}
header_upstream X-Forwarded-Proto {scheme}
}
}” > /usr/local/caddy/Caddyfile
tls参数会自动帮你签发ssl证书,如果你要使用自己的ssl,改为tls /root/xx.crt /root/xx.key即可。后面为ssl证书路径。
启动Caddy:
/etc/init.d/caddy start
就可以打开域名进行访问了。
最后该网盘好像没注册功能,不过按照作者的计划,下一个版本就会添加注册功能,当然也会多些其它功能,可以期待下
文章附件