我把最近发布的 localsend CLI 做成了容器

yuanweipangci05 2026-08-12 20:34 1

LocalSend 最近发布了官方 CLI(纯 TUI 的 headless 版,当前最新 v1.18.0),我这几天折腾了下,把它装进了 podman 容器,当作 NAS 上的常驻文件接收端。配对后,手机/电脑往局域网里的设备发消息只需要轻轻一点,收到的文件直接落盘。


项目地址: https://github.com/100pangci/localsend-cli-container


特性:


1. host 网络直通


localsend 发现设备靠 UDP 组播,必须走 host 网络,就不用网桥了。


2. 一次配对,永久自动接收


新设备第一次发文件时,需要输入:podman attach localsend ( docker 的话 podman 改成 docker )挂上 TUI ,手机发文件,然后按个 P,之后这台设备的文件全自动接受。收到的文件落到 .envLOCALSEND_DESTINATION 指定的目录。


3. 配置和身份全持久化


config.tomlidentity.pempaired-v2.json 都挂载到宿主目录,设备身份和配对列表持久存在。alias 不配置时默认是容器主机名,可以在 config.toml 里改成自己想要的(比如 localsend-nas),其他设备就能按这个名字搜到。


4. 自动更新


build.sh 自动查最新 release ,有新版本就重建镜像 + 重建容器,配了个定时器每周一凌晨检查,基本不用管。


怎么使用:


git clone https://github.com/100pangci/localsend-cli-container.git
cp .env.example .env

#然后将.env 里面的地址编辑成自己想要的地址

bash build.sh # 构建 + 启动
systemctl --user enable --now localsend-update.timer # 每周自动更新

一些坑也踩过了:



  • 只写了 podman 版(podman compose / podman attach),Docker 要用的话 README 里列了 4 处改动,主要就是删掉 userns_mode:keep-id 那行,适配成本很低

  • keep-id 用户命名空间 + bind mount 的权限问题,折腾了一会儿才理清

  • 版本号通过 --build-arg 传,不在 Dockerfile 里硬编码,更新镜像不用改任何文件


GitHub Actions 也加了语法检查的 workflow 。

最新回复 (2)
  • Admstor 08-12 20:54
    1
    是个好思路,某些单向保存的情况确实很适合,而且隐私性也很好
  • julyclyde 08-13 13:49
    2
    为了 而
* 帖子来源V2EX
返回