说明:Filestash
是一个类似Dropbox
的文件管理器,通过浏览器即可使用,可让您在任何位置管理数据。包括上传文件和文件夹,编辑文件,音频播放器,视频播放器,图像查看器。目前支持FTP
、SFTP
、WebDAV
、Git
、S3
、Minio Dropbox
、Google Drive
,貌似以后还会增加OneDrive
,而且登录访问速度很快,可以拿来修改VPS
或网盘文件,或者看看里面的小电影也行,安装方法也挺简单的,就一个Docker
,这里说一下。
截图
安装
官方文档:https://www.filestash.app/docs
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
2、运行filetash
这里官方是用的docker-compose
运行的,为了安装更简单,博主就直接改成了docker
运行,使用命令:
#基本命令,建议把文章看完后再运行该命令
docker run --restart=always --name filetash -d -p 8334:8334 machines/filestash
安装成功后可以直接通过ip:8334
访问,这里8334
端口可以自行修改,只需要修改上面的-p
参数即可,比如改成666
端口,则用-p 666:8334
。
不过要想使用完整的功能,比如GDrive
、Dropbox
网盘,就需要配置下域名,网盘api
客户端密匙等信息(获取方式看后面)。
以上说的几个信息可以直接在后台配置文件里修改,也可以加进上面的docker
命令一起运行,比如:
#变量参数如下,分别是域名,GDrive客户端ID和密匙,Dropbox客户端ID
-e APPLICATION_URL=<app_url>
-e GDRIVE_CLIENT_ID=<gdrive_client>
-e GDRIVE_CLIENT_SECRET=<gdrive_secret>
-e DROPBOX_CLIENT_ID=<dropbox_key>
#这里博主只需要用到GDrive,假设域名为file.moerats.com、ID和密匙为aaaa和bbbb,使用命令:
docker run --restart=always --name filetash -d \
-e APPLICATION_URL=file.moerats.com \
-e GDRIVE_CLIENT_ID=aaaa \
-e GDRIVE_CLIENT_SECRET=bbbb \
-p 8334:8334 \
machines/filestash
获取GDrive客户端信息
首先启用Google Drive API
,启用地址:点击进入。
再创建一个OAuth
客户端ID
,创建地址:点击进入。创建的时候可能会有个OAuth同意屏幕
选项,这里应用名称什么的随便填,授权的网域填你准备使用的域名主域名即可。
然后开始创建客户端ID
,注意已获授权的重定向URL
格式要正确,比如博主用的https://file.moerats.com
,那就在后面加个/login
,这里也记得区分下开头。如果你用的https
,需要填https
,反之http
。这里建议直接使用https
。
然后就可以获取GDRIVE_CLIENT_ID
和GDRIVE_CLIENT_SECRET
参数了。
最后登录的时候,出现该授权窗口就说明配置成功了。
获取Dropbox客户端信息
这个博主用的少,就大概说下思路,有需求的可以尝试下,方法如下。
先创建第三方应用程序,创建地址:点击进入,接下来大致步骤:
dropbox api - “Full Dropbox”或“App folder” - 您想要的任何名称 - 将重定向URI设置为https://domain.com/login
域名反代
上面配置了域名是不能直接访问的,需要反代下才行,反代可以用Nginx
、Caddy
,这里只说宝塔和Caddy
。如果你网站有宝塔,就可以使用宝塔进行反代,如果没有,建议使用第2
种的Caddy
反代,配置很快。
提示:这里以8334端口做示范,如果你运行的时候更换了端口,就请自行修改
1、宝塔反代
先进入宝塔面板,然后点击左侧网站,添加站点,然后再点击添加好了的域名名称,这时候就进入了站点配置,点击反向代理,目标URL
填入http://127.0.0.1:8334
,再启用反向代理即可。然后需要配置https
访问的,直接在站点配置启用ssl
即可。
2、Caddy反代
安装Caddy
:
wget -N --no-check-certificate https://raw.githubusercontent.com/iiiiiii1/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访问(这里不建议使用http),该配置不会自动签发SSL
echo "file.moerats.com {
gzip
proxy / 127.0.0.1:8334 {
header_upstream Host {host}
header_upstream X-Real-IP {remote}
header_upstream X-Forwarded-For {remote}
header_upstream X-Forwarded-Port {server_port}
header_upstream X-Forwarded-Proto {scheme}
}
}" > /usr/local/caddy/Caddyfile
#https访问,该配置会自动签发SSL,请提前解析域名到VPS服务器
echo "file.moerats.com {
gzip
tls admin@moerats.com
proxy / 127.0.0.1:8334 {
header_upstream Host {host}
header_upstream X-Real-IP {remote}
header_upstream X-Forwarded-For {remote}
header_upstream X-Forwarded-Port {server_port}
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
就可以打开域名进行访问了。
如果启动失败,可以查看下启动日志,使用命令:
tail -f /tmp/caddy.log
最后体验了一下,小问题还是有些的,貌似不支持移动合剪切等基本功能啥的,看后期能不能加上吧。
版权声明:本文为原创文章,版权归 Rat's Blog 所有,转载请注明出处!
本文链接:https://www.moerats.com/archives/861/
如教程需要更新,或者相关链接出现404,可以在文章下面评论留言。
楼主,这个怎么删除啊,安装时候下载了400多m的东西,现在想删掉了。。
docker kill $(docker ps -aq)
docker rm $(docker ps -aq)
docker rmi $(docker images -q)
docker volume rm $(docker volume ls -q)
哈哈、感谢博主
怎么看本地文件啊?要在宝塔弄个ftp什么的吗?
用ftp客户端登录vps就可以了,比如winscp客户端
连接上了,不过这个项目什么情况啊?我想在后台填写默认的sftp地址,写一行自动删一行。google drive连接上了一次,上传文件一直打转,有一个上传成功了一刷新就不显示了。去google drive看有东西,但在这里面不显示。删除也是,明明删掉了,一刷新就又显示了。去看文件是删掉了。感觉所有操作都要清除一下缓存?不然什么操作都无效?
你是用的域名?然后用的宝塔反代的?
对的……宝塔反代会有问题吗?
宝塔反代有缓存配置
唔……那请问要怎么解决呢?手动配置nginx?
编辑下反代配置,把缓存代码删掉就行了,貌似就2行。然后重启nginx
是在网站的配置页面吗?我只找到了下面这些代码
{ proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header REMOTE-HOST $remote_addr; proxy_pass http://127.0.0.1:8335; #缓存相关配置 #proxy_cache cache_one; #proxy_cache_key $host$request_uri$is_args$args; #proxy_cache_valid 200 304 301 302 1h; expires 24h; } #PROXY-ENDlocation ~ .*.(html|htm|png|gif|jpeg|jpg|bmp|js|css)?$
但是这些缓存代码不都被注释了吗?我没有找到反代的配置.......麻烦大佬帮忙看看怎么办,不然没法用......
我记得最新版的宝塔,需要去域名设置-反向代理-配置文件,然后在这里删掉2行缓存代码
这个很强,大佬,我的友链掉了
没有啊,在链接库的内页栏目。
为什么搭建docker之后,连接google时候不行呢?试了好几次
页面错误提示是什么?
连接google时候,选择Drive,点击CONNECT后一直在转圈,官方demo网站一点就跳转了
阿里云应该不行吧
应该不行。
为什么不行???
好像是我的理解有误,不清楚他具体指的哪方面,要是搭建或者登录的话是可以的。
这款不错,有空装装试试。喜欢这种all in one的程序。