一、FileGator介绍
1.1 FileGator简介
- FileGator简介
FileGator是一个免费的、开源的、自托管的 Web 应用程序,用于管理文件和文件夹。
1.2 FileGator功能
- 管理本地存储库文件夹中的文件
- 连接到其他存储适配器
- 多用户支持,可赋予不同访问权限、角色和主文件夹
- 支持复制、移动、重命名、编辑、创建、删除、预览、压缩、解压缩、下载、上传等基本文件操作
- 支持一次下载多个文件或文件夹
- 文件上传支持拖拽、进度条、暂停和恢复
- 上传是分块的,适应大文件的上传
- 提供文件预览功能
1.3 FileGator特点
- 多个存储适配器(本地、FTP、Amazon S3、Dropbox、DO Spaces、Azure Blob 和许多其他通过 Flysystem)
- 具有角色和权限的多个身份验证适配器(将用户存储在 json 文件、数据库中或使用 WordPress)
- 多个会话适配器(Native File、Pdo、Redis、MongoDB、Memcached 等通过 Symfony)
- 单页前端(使用 Vuejs、Bulma 和 Buefy 构建))
- 分块上传(使用 Resumable.js 构建))
- Zip 和批量下载支持
- 高度可扩展、解耦和经过测试的代码
- 无需数据库
- 无™框架
1.4 FileGator的使用场景
- 与同事、团队、朋友或家人共享文件夹
- 让学生有权上传他们的作品
- 允许工作人员上传现场数据/文档/图像
- 用作云备份
- 与多人一起管理 CDN
- 用作FTP/SFTP替代品
- 管理 S3 或其他第三方云存储
- 用于快速压缩和下载远程文件
二、本地环境介绍
2.1 本地环境规划
本次实践为个人测试环境,操作系统版本为centos7.6。
hostname | IP地址 | 操作系统版本 | Docker版本 |
---|---|---|---|
jeven | 192.168.3.166 | centos 7.6 | 2 20.10.17 |
2.2 本次实践介绍
1.本次实践部署环境为个人测试环境,生产环境请谨慎;
2.在Docker环境下部署FileGator文件管理器。三、本地环境检查
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 Mon 2024-01-15 22:37:45 CST; 2min 45s ago
Docs: https://docs.docker.com
Main PID: 11675 (dockerd)
Tasks: 9
Memory: 127.4M
CGroup: /system.slice/docker.service
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
四、下载FileGator镜像
从docker hub拉取filegator镜像
[root@jeven ~]# docker pull filegator/filegator
Using default tag: latest
latest: Pulling from filegator/filegator
Digest: sha256:f30791f51ab2b03e22025cb54d49cc9c53d43d46201ca4d82c5077a560174ccc
Status: Image is up to date for filegator/filegator:latest
docker.io/filegator/filegator:latest
五、部署FileGator文件管理器
5.1 创建挂载目录
创建FileGator挂载目录/data/filegator/data
mkdir -p /data/filegator/data && cd /data/filegator/
设置目录权限
chmod -R 777 /data/filegator/
5.2 编辑docker-compose.yaml文件
使用docker-cli创建FileGator容器,执行以下命令,映射端口可自行修改。
docker run -d \
--name filegator \
--restart always \
-p 8880:8080 \
-v /data/filegator/data:/var/www/filegator/repository/ \
filegator/filegator
本次实践部署使用docker compose方式,编辑docker-compose.yaml文件。
version: '3.8'
services:
filegator:
image: filegator/filegator
container_name: filegator
restart: always
ports:
- 8880:8080
volumes:
- /data/filegator/data:/var/www/filegator/repository/
5.3 创建FileGator容器
使用docker-compose.yaml文件创建FileGator容器
docker compose up -d
5.4 检查FileGator容器状态
检查FileGator容器状态,确保FileGator容器正常启动。
[root@jeven filegator]# docker compose ps
NAME COMMAND SERVICE STATUS PORTS
filegator "docker-php-entrypoi…" filegator running 0.0.0.0:8880->8080/tcp, :::8880->8080/tcp
5.5 检查FileGator容器日志
检查FileGator容器日志,确保FileGator服务正常运行。
docker compose logs
六、FileGator的基本使用
6.1 登录FileGator
访问地址:http://192.168.3.166:8880,将IP替换为自己服务器IP地址,进入到FileGator登录页。如果无法访问,则检查服务器防火墙是否设置,云服务器的安全组端口是否放行等。
默认登录账号密码:admin/admin,输入完登录账号和密码后,进入FileGator首页。
6.2 上传文件
点击上传文件“Add files”选项,将本地文件上传到FileGator。
6.3 在线预览文件
点击上传的文件名称,在线预览文件。
七、总结
FileGator是一款用户体验优秀的文件管理器,界面简洁、操作简单,适合新手快速上手。该工具的文件上传速度快,支持在线预览PDF文件和图片,非常方便。此外,FileGator的部署也十分简单,可以轻松部署在个人本地服务器上,作为文件服务器使用,能够提高工作和学习效率。