【Docker项目实战】使用Docker部署Filestash文件管理器
一、Filestash介绍
1.1Filestash简介
Filestash
是一款功能强大的网络文件管理工具,它允许用户在单一界面下管理分布于不同地点和平台的数据。无论是FTP、SFTP、WebDAV服务器,还是Git仓库,亦或是S3、Minio、Dropbox、Google Drive等云存储服务,Filestash都能提供便捷的访问和管理途径。通过Filestash,用户可以轻松实现文件的上传、下载、编辑、搜索和版本控制,无需在多个应用程序或服务之间切换,极大地提升了数据管理和协作的效率。尤其对于需要频繁处理多源文件的专业人士或团队,Filestash无疑是一个理想的解决方案。
1.2 Filestash特点
-
从浏览器管理文件:允许用户通过任何现代浏览器轻松管理存储在不同位置的文件,无需安装额外的软件。
-
认证中间件:支持连接到各种用户来源的认证机制,确保数据的安全性和用户身份的验证。
-
灵活的共享机制:提供多样化的文件共享方式,让文件的分享变得既简单又安全。
-
Chromecast支持:能够将图像、音乐和视频流式传输到Chromecast设备,享受大屏体验。
-
视频播放器:内置视频播放功能,支持mov、mkv、avi、mpeg等多种格式的视频播放。
-
视频转码:能够将不同格式的视频文件转换为兼容的格式,以便在各种设备上播放。
-
图像查看器:提供图像预览和查看功能,支持包括尼康、佳能等相机原始格式在内的多种图像格式。
-
图像转码:将原始图像格式转换为标准格式,便于查看和分享。
-
照片管理:提供照片组织和管理功能,帮助用户整理和查找个人照片。
-
音频播放器:内置音频播放功能,支持多种音频格式的播放。
-
共享链接作为网络驱动器:共享的链接可以作为完整的网络驱动器挂载,方便远程访问和协作。
-
办公文档支持:能够打开和编辑常见的办公文档格式,如docx、xlsx等。
-
全功能org模式客户端:提供org模式的支持,适用于文档编写和任务管理。
-
用户友好界面:设计直观,易于使用,即使是非技术人员也能快速上手。
-
移动设备友好:优化的移动界面,确保在手机和平板电脑上也能顺畅使用。
-
可定制化:允许用户根据自己的喜好和需求定制界面和功能。
-
插件支持:提供插件系统,可以扩展功能和集成第三方服务。
-
超级快速:采用高效的技术架构,提供快速的文件上传和下载体验。
-
上传文件和文件夹:支持拖放上传,快速将本地文件或文件夹上传至云端。
-
下载为zip:能够将文件打包为zip格式下载,方便离线使用和分享。
-
支持多种云提供商和协议:兼容多种云存储服务和传输协议,易于扩展和集成。
-
Nyan猫加载动画:在加载过程中展示可爱的Nyan猫动画,增加趣味性。
-
快速访问:常用文件夹可以固定在首页,实现一键快速访问。
-
Emacs、VIM或Sublime Text快捷键:支持多种文本编辑器的快捷键绑定,提高工作效率。
-
搜索功能:提供强大的搜索能力,帮助用户快速找到所需的文件。
-
更多功能:除了上述功能外,Filestash还提供了许多其他便利和实用的功能,等待用户发掘和体验。
1.3 Filestash使用场景
-
远程工作与协作:
- 当团队成员分散在全球各地时,Filestash可以作为一个统一的文件存储和协作平台。团队成员可以实时上传和下载项目文件,无需担心文件版本冲突,因为Filestash支持版本控制和历史记录。
-
媒体资产管理:
- 对于摄影师、视频制作人或设计师来说,Filestash可以作为集中管理大量媒体文件(如RAW照片、高清视频)的中心。它不仅提供图像和视频预览,还能进行格式转码,使得在不同设备上查看和编辑变得容易。
-
个人云存储整合:
- 个人用户可能同时使用多个云存储服务,比如Google Drive、Dropbox和OneDrive。Filestash可以让用户在一个界面上管理所有这些服务中的文件,简化了日常的文件管理和备份流程。
-
开发人员的代码仓库管理:
- 开发者可以利用Filestash来访问和管理他们的Git仓库,无需在本地安装Git或其他版本控制系统。这在进行代码审查、合并分支或远程调试时特别有用。
-
教育和培训资源分发:
- 教师或课程开发者可以使用Filestash来存储和分享教学材料,如PDF文档、PPT演示文稿和视频教程。学生可以从任何设备访问这些资源,而不需要下载或安装专用的应用程序。
-
家庭媒体中心:
- 家庭成员可以通过Filestash在家中或外出时访问共同的照片、音乐和电影收藏。Chromecast支持使得在电视上播放多媒体内容变得更加方便。
-
企业文档管理和合规性:
- 在企业环境中,Filestash可以用于管理敏感的文档和数据。其内置的权限管理和加密功能有助于确保只有授权用户才能访问特定文件,符合数据保护法规要求。
二、本地环境介绍
2.1 本地环境规划
本次实践为个人测试环境,操作系统版本为centos7.6。
hostname | IP地址 | 操作系统版本 | Docker版本 |
---|---|---|---|
jeven | 192.168.3.166 | centos 7.6 | 20.10.17 |
2.2 本次实践介绍
1.本次实践部署环境为个人测试环境,生产环境请谨慎;
2.使用Docker部署Filestash文件管理器。
三、本地环境检查
3.1 检查Docker服务状态
检查Docker服务是否正常运行,确保Docker正常运行。
[root@jeven ~]# systemctl status docker
● docker.service - Docker Application Container Engine
Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)
Active: active (running) since Wed 2024-07-03 21:07:37 CST; 1 day 21h ago
Docs: https://docs.docker.com
Main PID: 11950 (dockerd)
Tasks: 10
Memory: 138.3M
CGroup: /system.slice/docker.service
└─11950 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
3.2 检查Docker版本
检查Docker版本
[root@jeven ~]# docker -v
Docker version 20.10.17, build 100c701
3.3 检查docker compose 版本
检查Docker compose版本,确保2.0以上版本。
[root@jeven ~]# docker compose version
Docker Compose version v2.6.0
四、下载Filestash镜像
- 拉取Filestash容器镜像
docker pull machines/filestash
五、部署Filestash应用
5.1 下载部署文件
- 创建部署目录
mkdir filestash && cd filestash
- 下载docker compose部署文件
curl -O https://downloads.filestash.app/latest/docker-compose.yml
5.2 查看部署文件
进入Filestash项目,查看docker-compose.yml部署文件。
version: '2'
services:
app:
container_name: filestash
image: machines/filestash
restart: always
environment:
- APPLICATION_URL=
- GDRIVE_CLIENT_ID=<gdrive_client>
- GDRIVE_CLIENT_SECRET=<gdrive_secret>
- DROPBOX_CLIENT_ID=<dropbox_key>
- ONLYOFFICE_URL=http://onlyoffice
ports:
- "8334:8334"
volumes:
- filestash:/app/data/state/
onlyoffice:
container_name: filestash_oods
image: onlyoffice/documentserver
restart: always
security_opt:
- seccomp:unconfined
volumes:
filestash: {}
5.3 创建Filestash容器
- 使用docker-compose.yaml文件创建Filestash容器
docker compose up -d
5.4 检查容器状态
检查Filestash容器状态,确保Filestash容器正常启动。
root@ubuntu-001:~/filestash# docker compose ps
NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS
filestash machines/filestash "/app/filestash" app 32 minutes ago Up 31 minutes 0.0.0.0:8334->8334/tcp, :::8334->8334/tcp
filestash_oods onlyoffice/documentserver "/app/ds/run-documen…" onlyoffice 32 minutes ago Up 31 minutes 80/tcp, 443/tcp
六、访问Filestash首页
6.1 进入Filestash初始页
访问地址:http://192.168.3.251:8334,将IP替换为自己服务器IP地址,进入到Filestash初始页。如果无法访问,则检查服务器防火墙是否设置,云服务器的安全组端口是否放行等。
6.2 设置登录密码
在初始页,自定义设置登录密码后,进入到Filestash的后台管理页面,此时地址为:
http://192.168.3.251:8334/admin/backend
。在此页面会提示配置SSL证书,使用https登录以降低风险,本次实践由于本地部署忽略,有兴趣的可以参考https://blog.csdn.net/jks212454/article/details/135224248博文中的SSL和https配置方法。
6.3 测试连接
浏览器:http://192.168.3.251:8334/login,这里选择mysql对象。选择mysql连接信息。
确定连接后,进入到mysql数据库内。
选择数据库与表,可以正常查看数据。
七、总结
Filestash以其卓越的集成能力和统一的管理界面,革新了多源文件的处理方式,使用户能够在不跳出单一平台的情况下,高效操控散布于各类云服务和服务器中的数据。它不仅简化了文件的上传、下载和编辑流程,还通过强大的搜索功能和版本控制,显著提升了团队协作的流畅度与数据安全性。对于寻求优化工作流、增强生产力的专业人士和团队而言,Filestash无疑是提升文件管理效率的首选工具。
- 点赞
- 收藏
- 关注作者
评论(0)