2.7 KiB
LocalSend trusted-lane receiver on N.O.M.A.D.
Repo-tracked Docker stack that runs a headless LocalSend receiver on N.O.M.A.D. with its own Trusted-LAN IP.
- Repo stack path:
/home/fizzlepoof/repos/truenas-stacks/localsend-nomad - Live stack path:
/opt/localsend-nomad - Trusted bind IP:
10.5.1.16 - Trusted VLAN:
51 - LocalSend ports:
53317/tcp,53317/udp - Inbox path on host:
/home/fizzlepoof/private/inbox-secrets - Advertised device name:
Doris Trusted Inbox
Why this exists
N.O.M.A.D. lives on the Servers VLAN (10.5.30.7), but some operator handoff flows need a LocalSend receiver directly reachable from the Trusted LAN (10.5.1.0/24). This stack gives LocalSend its own Trusted-LAN address without moving the host itself off the Servers network.
Network model
- Docker uses a
macvlannetwork with parentenp5s0.51. enp5s0.51is the Trusted VLAN subinterface on N.O.M.A.D.'s primary NIC.- Docker will create the VLAN subinterface automatically when the macvlan network is created.
- Same-host testing from N.O.M.A.D. to
10.5.1.16is unreliable because macvlan isolates the host from the container's address on the same parent interface. - Verify reachability from another Trusted-LAN peer instead, such as PD on
10.5.1.6.
LocalSend build provenance
The image is built locally from upstream 0w0mewo/localsend-cli at:
- commit:
54702513990eeb763e1615f274d5365442e3e393
Then it applies patches/localsend-cli-doris.patch, which keeps the receiver compatible with the LocalSend endpoint behavior already working in the existing Doris receiver flow.
Files
docker-compose.yaml— live stack definitionDockerfile— reproducible CLI build from upstream + patch.env.example— deployment variablesbin/prepare_nomad.sh— creates runtime dirs, validates config, optional--uppatches/localsend-cli-doris.patch— repo-tracked patch applied during image build
Deploy / refresh on NOMAD
cd /opt/localsend-nomad
cp .env.example .env
./bin/prepare_nomad.sh --up
Verification
From N.O.M.A.D.:
docker compose --env-file .env ps
sudo docker logs --tail 50 localsend-trusted
From another Trusted-LAN host:
ping 10.5.1.16
nc -vz 10.5.1.16 53317
Then confirm Doris Trusted Inbox appears as a LocalSend target from a Trusted-LAN device.
Notes
- The container writes directly into
/home/fizzlepoof/private/inbox-secretson the host so the existing autosort / intake flow can keep using the same inbox path. - This stack does not publish host ports; the dedicated Trusted-LAN IP is the service endpoint.
- If the upstream CLI behavior changes later, rebuild from a reviewed newer commit and update the patch or drop it if upstream no longer needs the workaround.