FileRun多功能网盘的搭建

news2025/1/7 19:15:37

在这里插入图片描述

本文完成于国庆期间;

什么是 FileRun ?

FileRun 是一个自托管的 Google Drive 替代方案。它是一个功能齐全的基于 Web 的文件管理器,具有易于使用的用户界面。

FileRun 免费版 可以用于商业和非商业用途,默认提供 5 个用户帐户。注册安装后可以再增加另外 5 个。

老苏个人觉得跟 NextCloud 比较像,因为 FileRun 甚至可以使用 NextCloud 的客户端进行同步

安装

建数据库

老苏用了群晖自带的 MariaDB 10 数据库。

phpMyAdmin 中创建名为 filerun 的空数据库。

为便于说明,假设数据库密码为 123456

在这里插入图片描述

安装镜像

在群晖上以 Docker 方式安装。

在注册表中搜索 filerun ,选择第二个 filerun/filerun,版本选择 latest

在这里插入图片描述

docker 文件夹中,创建一个新文件夹 filerun,并在其中建两个子文件夹,分别是 htmluser-files

在这里插入图片描述

文件夹装载路径说明
docker/filerun/html/var/www/htmlweb 程序目录
docker/filerun/user-files/user-files存放用户文件

端口

本地端口不冲突就行,不确定的话可以用命令查一下

# 查看端口占用
netstat -tunlp | grep 端口号
本地端口容器端口
728080

在这里插入图片描述

环境

可变
FR_DB_HOST数据库主机地址,默认为 db,改为数据库的主机 IP
FR_DB_PORT数据库端口,默认为 3306,改为 3307
FR_DB_NAME数据库库名,默认为 filerun,保存不变
FR_DB_USER数据库用户,默认为 filerun,保存不变
FR_DB_PASS数据库密码,默认为 filerun,改为你自己的数据库密码
APACHE_RUN_USER容器用户,默认 user,改为 www-data
APACHE_RUN_USER_ID容器用户 ID,默认 1000,改为 33
APACHE_RUN_GROUP容器用户组,默认 www-data
APACHE_RUN_GROUP_ID容器用户组 ID,默认 1000,改为 33

在这里插入图片描述

命令行安装

如果你熟悉命令行,可能用 docker cli 更快捷

# 新建文件夹 filerun 和 子目录
mkdir -p /volume2/docker/filerun/{html,user-files}

# 进入 filerun 目录
cd /volume2/docker/filerun

# 运行容器
docker run -d \
   --restart unless-stopped \
   --name filerun \
   -p 7280:80 \
   -v $(pwd)/html:/var/www/html \
   -v $(pwd)/user-files:/user-files \
   -e FR_DB_HOST=192.168.0.197 \
   -e FR_DB_PORT=3307 \
   -e FR_DB_NAME=filerun \
   -e FR_DB_USER=filerun \
   -e FR_DB_PASS=123456 \
   -e APACHE_RUN_USER=www-data \
   -e APACHE_RUN_USER_ID=33 \
   -e APACHE_RUN_GROUP=www-data \
   -e APACHE_RUN_GROUP_ID=33 \
   filerun/filerun

也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

version: '2'

services:
  web:
    image: filerun/filerun
    container_name: filerun
    restart: unless-stopped
    environment:
      FR_DB_HOST: 192.168.0.197
      FR_DB_PORT: 3307
      FR_DB_NAME: filerun
      FR_DB_USER: filerun
      FR_DB_PASS: 123456
      APACHE_RUN_USER: www-data
      APACHE_RUN_USER_ID: 33
      APACHE_RUN_GROUP: www-data
      APACHE_RUN_GROUP_ID: 33
    ports:
      - "7280:80"
    volumes:
      - ./html:/var/www/html
      - ./user-files:/user-files

然后执行下面的命令

# 新建文件夹 filerun 和 子目录
mkdir -p /volume2/docker/filerun/{html,user-files}

# 进入 filerun 目录
cd /volume2/docker/filerun

# 将 docker-compose.yml 放入当前目录

# 一键启动
docker-compose up -d

运行

在浏览器中输入 http://群晖IP:7280 就能看到设置界面

在这里插入图片描述

系统会检测运行环境

这时间上检测的是容器内的运行环境,所以一般不会有问题

在这里插入图片描述

数据库我们已经在环境变量里做了设置,所以这里检测下就行

在这里插入图片描述

没问题就下一步

在这里插入图片描述

会自动新建管理员,密码一定要记下来,不然只能通过命令行重置了

在这里插入图片描述

用上一步生成的账号密码、登录

Your username is superuser
Your password is cff22a6d5cb7

在这里插入图片描述

主界面还是很清爽的

中文

官方提供的语言包地址是:https://github.com/filerun/translations,但是现在这里什么都没有

在这里插入图片描述

文档中提到的翻译工具什么的也找不到,老苏后来找到了网友提供的 chinese.php,地址放在最后的参考文档中,老苏做了格式化处理,你可以在这里下载:https://raw.githubusercontent.com/wbsu2003/synology/main/FileRun/chinese.php

你可以复制粘贴或者直接另存为 chinese.php,接下来有两种方法设置将 FileRun 设置为中文

方式一

chinese.php 放入 /docker/filerun/html/system/data/translations 目录

在这里插入图片描述

Control panel --> Interface options --> Language,缺省的语言中就会多一个 Chinese 选项

在这里插入图片描述

方式二

通过 Upload file 上传 chinese.php

不管哪种方式, Save changes 之后,需要刷新一下页面,但是在 Chrome 中似乎并没有完全汉化,删了 cookie 也一样,不清楚原因

但是老苏换了 Edge 浏览器就好了

主界面也是中文的

功能就不介绍了,反正中文的,一看就懂

反向代理

实际访问地址为: https://filerun.laosu.ml:444

域名局域网地址备注
filerun.laosu.mlhttp://192.168.0.197:7280FileRun 的访问地址

npm 中的设置

在这里插入图片描述

SSL 都勾选了

在这里插入图片描述

官方给的代码,没有考虑到截端口的情况

proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-Protocol $scheme;

所以老苏做了修改,将下面的代码填入到 npmAdvanced

   location / {  
       proxy_set_header Host $host:444;  
       proxy_set_header X-Forwarded-For   $proxy_add_x_forwarded_for;  
       proxy_set_header X-Forwarded-Proto $scheme;
       proxy_set_header X-Forwarded-Protocol $scheme;
       proxy_pass  http://192.168.0.197:7280;  
       proxy_redirect http:// https://;  
   }

在这里插入图片描述

License

未注册的安装最多可提供 5 个用户,注册安装之后最多可为 10 个用户提供服务。

只要输入邮件地址

在这里插入图片描述

但局域网方式访问时,是不能申请注册的

在这里插入图片描述

域名访问就没问题,应该会自动绑定邮件和域名

在这里插入图片描述

不过一直就没收到邮件,不知道是啥情况,说是可以通过 FileRun client account 找回来,老苏只是写个教程,懒得弄了。

参考文档

filerun/docker: FileRun Docker Image
地址:https://github.com/filerun/docker

docker :: FileRun Documentation
地址:https://docs.filerun.com/docker

filerun网盘 中文语言包 汉化包 chinese.php at 麻茄 | MAQIE 草原的博客 -YuLiang’S blog
地址:https://www.maqie.com/2022/05/31/filerun%E7%BD%91%E7%9B%98-%E4%B8%AD%E6%96%87%E8%AF%AD%E8%A8%80%E5%8C%85-%E6%B1%89%E5%8C%96%E5%8C%85-chinese-php/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/54361.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Spring框架(一):SpringBean的生命周期以及循环依赖和处理方式

这里写目录标题前言Spring的生命周期循环依赖三级缓存处理流程Spring Ioc容器实例化 流程前言 痛定思痛,主要问题出现在自己雀氏不熟悉框架基础、一些面试题,以及sql的使用淡忘了。 本章节的开始是对于过去的重新回顾,当然,我也会…

该如何选择合适的服务器,保证服务器的安全

在服务器遇到大量进犯,不方便转移时,很多运营网站或许游戏的会挑选接入云防护产品, 服务器在遭受进犯形成服务器瘫痪无法正常的运行,遇到这样的状况都会挑选有较高防护的服务器器,可是有时分服务器的数据搬迁有比较麻…

如何将音乐导入iphone手机,怎么将歌曲导入到iphone

如何将音乐导入iphone手机?把音乐导入苹果手机,主要有2种方法:一种是使用iTunes把音乐导入iPhone,另一种是通过专门的工具将iPhone不支持的音乐格式导入到手机中。我们一起来了解一下。 方法一、使用iTunes将音乐传输到iphone iT…

【Spring框架】超详细的AOP技术详解,你真的不来看看吗?

✅作者简介:热爱Java后端开发的一名学习者,大家可以跟我一起讨论各种问题喔。 🍎个人主页:Hhzzy99 🍊个人信条:坚持就是胜利! 💞当前专栏:【Spring】 🥭本文内…

led灯什么牌子的质量好又耐用?2022性价比高的led护眼灯品牌推荐

大家生活中可能都接触到了不少的人造灯光,不知道有没有留意过,其实大部分都是使用led灯珠作为发光源呢,这是由于led灯的确有很多传统台灯所不具备的优势。 Led作为一种固态半导体元件,具有自发光的特性,可以直接将电能…

【元宇宙欧米说】探讨Web3领域的文化交汇点

在Web3的加持下,如何融合各产业建立文化新生态?电影、音乐、文学、艺术等如何更好地融汇碰撞创造新生机? 12月6日下午三点,ⁿᵒ 3.14创始人Crystal将以“探讨Web3领域的文化交汇点”为题,与大家共同探讨Web3时代的文化…

[附源码]Python计算机毕业设计Django基于JavaWeb的学校社团活动管理系统

项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等等。 环境需要 1.运行环境:最好是python3.7.7,我…

领悟《信号与系统》之 连续系统的频域分析

连续系统的频域分析一、连续系统的频域分析1. 系统函数与系统的频域分析1. 理论分析2. 频域分析法求解系统零状态响应步骤2. 无失真传输一、连续系统的频域分析 一个系统的重要指标就是求系统函数,用系统函数来表征这个系统得特性,系统函数其实系统对外…

【毕业设计】深度学习OCR中文识别系统 - opencv python

文章目录0 前言1 课题背景2 实现效果3 文本区域检测网络-CTPN4 文本识别网络-CRNN5 最后0 前言 🔥 Hi,大家好,这里是丹成学长的毕设系列文章! 🔥 对毕设有任何疑问都可以问学长哦! 这两年开始,各个学校对…

Android ViewPager2 + Fragment + BottomNavigationView 联动

Android ViewPager2 Fragment BottomNavigationView 联动 本篇主要介绍一下 ViewPager2 Fragment BottomNavigationView , 上篇中把ViewPager2和Fragment 联动起来了, 本篇主要把 BottomNavigationView集成进去 概述 BottomNavigationView 是一个底部导航控件, 现在要实现…

import一个“太极”库,让Python代码提速100倍

众所周知,Python的简单和易读性是靠牺牲性能为代价的—— 尤其是在计算密集的情况下,比如多重for循环。 不过现在,大佬胡渊鸣说了: 只需import 一个叫做“Taichi”的库,就可以把代码速度提升100倍! 不信&…

Springboot配置文件加密

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录前言一、jasypt二、使用步骤1.引入依赖2.添加配置3.生成密钥3.idea启动添加环境变量3.linux环境启动报错前言 前面叙述了数据传递过程中的加密,需要使用…

docker 命令 相关

mysql 主从复制: 一主多从配置 主服务器:容器名mysql-master,端口3307 从服务器:容器名mysql-slave1,端口3308 从服务器:容器名mysql-slave2,端口3309 注意:如果此时防火墙是开启…

[附源码]计算机毕业设计JAVA星期八酒店管理系统

[附源码]计算机毕业设计JAVA星期八酒店管理系统 项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM myba…

ASEMI整流桥堆GBJ406的作用,GBJ406整流桥型号及参数

编辑-Z GBJ406整流桥型号及参数,ASEMI整流扁桥GBJ406电性参数为4A反向电压600V;浪涌电流Ifsm为120A;工作温度为:-55℃~150℃;采用台湾进GPP芯片中有4个芯片,芯片尺寸84MIL。 GBJ406参数描述 型号&#xf…

FCPX插件Yanobox Motype for mac(43种动画发生器)

Yanobox Motype mac版是要您后期制作的福音。插件仅适用于:Mac OSX 苹果系统下:Final Cut Pro X 、Motion,Premiere Pro和After Effects剪辑软件。随意更改字体大小和位置,随意制作你喜欢的视频! 提供了一个多功能的…

从根上理解Cglib与JDK动态代理

最近在阅读到了Spring源码对于两种动态代理使用在不同场景下的使用,两种方式各有利弊写一篇文加深自己的认识。文中对于源码的涉及较少,更多的是作者自己的理解和举例,然后通过部分源码验证。 首先看两个面试经常会遇到的关于Spring的问题&a…

数理统计笔记7:分类数据分析-拟合优度检验和列联分析

引言 数理统计笔记的第7篇介绍了分类数据分析的方法,包括拟合优度检验和列联分析,给出了两者的卡方检验量的表达式,并且用例子进行了说明,最后谈了列联分析需要注意的问题。 引言什么是分类型数据拟合优度检验χ2\chi^2χ2统计量例…

使用AWS-AppSync实时监控物联网设备iOS端

aws-appsync-iot-core-实时iOS端示例 第一步参考如下资料 第一步找资料 网址: https://aws.amazon.com/cn/blogs/mobile/iot-with-aws-appsync/ iOS的sdk是 : https://github.com/aws-amplify/aws-sdk-ios android的sdk是: https://gith…

[附源码]JAVA毕业设计基于web的公益募捐网站(系统+LW)

[附源码]JAVA毕业设计基于web的公益募捐网站(系统LW) 目运行 环境项配置: Jdk1.8 Tomcat8.5 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目…