以一种全新的方式自制了chfs的docker容器

chfs 是大佬做的webdav服务端应用 只需要一个可执行文件+配置文件即可使用
自己把chfs打包成了docker容器来方便自己使用…但是某天发现 chfs 居然还诈尸更新了!!!
为防止以后每次更新都要重新打包容器 我尝试了一条邪道

创建chfs目录 cd chfs 挂载目录 并将chfs执行文件和chfs.ini配置文件放入其中
chfs.ini 内容如下

port=8081
path=/start
log=/start/chfs/logs
image.preview=true
file.remove=3
[guest]
rule.none=/
[admin]
password=password
rule.default=d

执行chmod命令授予chfs可执行权限

chmod 700 chfs

然后docker run 一把梭

docker run -itd \
--name=chfs \
--privileged=true \
-p 8081:8081 \
-v /:/start/system \
-v $PWD:/start/chfs \
alpine:latest /start/chfs/chfs --file=/start/chfs/chfs.ini

alpine容器做基础,执行文件所在目录直接映射到容器里,容器启动后直接运行该文件,这样以后chfs更新的话只需要替换chfs文件并授予可执行权限+重启容器就行了

为啥现在才想到写这个呢…因为后来我发现 原作者自己做了chfs的官方docker容器 :rofl:

1 个赞

docker真是…万能

话说 …今天突然想着 把localsend 也塞到docker里 让群晖等NAS系统运行
这样所有平台都能方便的局域网互传文件

然后试了几次 结果都不太理想 不知道青蛙有啥思路没?

我的想法是装个带桌面环境+novnc的ubuntu容器跑localsend
但是遇到两个问题 一个是我宿主系统内核版本比较旧…找不到合适的现成容器 还有就是…这么一套东西弄下来 估计又得好几个G 感觉单纯为了这个 太笨重了

1 个赞

chfs升级到3.0后,原来的API好像没有了。

NAS 为什么要这个…

作为一款 NAS,传输文件还不够方便么…

这是什么行为,这是行为艺术啊

那个 api ??

想着 所有手机 平板 甚至电视机 文件互传只用一个app

鄙人认为完全没必要如此大费周章。LocalSend 本身就是跨平台的应用,而且是点对点传输的,不适合也没必要部署到服务器上。

您可以在所有平台都安装 Localsend 应用,在 NAS 上部署一个内网穿透服务,来实现全平台的互通。

或者最直接的,NAS 上部署一个基于 HTTP 的文件传输服务器(chfs、dufs,若不需要 WebDAV 支持还可以用 webd),其他平台通过浏览器访问,需要发送文件时就传到 NAS 上,需要接收文件的把文件下载下来就好。

另外,chfs 这种单可执行文件、不依赖其他环境的应用,也无需 Docker 进行部署,可以尝试将其注册成系统服务,直接通过 Linux 系统的 init 系统(比如 systemmd、OpenRC)进行管理,比 Docker 更方便。