Skip to content

Commit 700f7e1

Browse files
tomquistclaude
andauthored
docs: clarify port 1010 bind on Docker for shellypro3em_old (#368)
* docs: clarify port 1010 bind on Docker for shellypro3em_old The Docker image runs as a non-root user, so binding to port 1010 fails even with network_mode: host. Note the two working workarounds (lower net.ipv4.ip_unprivileged_port_start or run as root) and call out that bridge port-publishing does not forward UDP broadcasts. * docs: note that combined shellypro3em is also affected by 1010 bind The combined shellypro3em device type expands to both _old and _new listeners, so it binds 1010 as well. --------- Co-authored-by: Claude <noreply@anthropic.com>
1 parent cee591a commit 700f7e1

1 file changed

Lines changed: 2 additions & 0 deletions

File tree

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1012,6 +1012,8 @@ A: Ports below 1024 require root privileges on Linux. Solutions:
10121012
- Use `setcap` to grant permissions
10131013
- Run as root (not recommended)
10141014

1015+
Note: the Docker image runs as a non-root user, so binding port 1010 (used by `shellypro3em_old` and the combined `shellypro3em`, which starts both listeners) still fails with `PermissionError: [Errno 13]` under `network_mode: host`. Port 2220 (`shellypro3em_new`) is unaffected. Either lower the host's privileged-port range (`sudo sysctl -w net.ipv4.ip_unprivileged_port_start=1010`, persist via `/etc/sysctl.d/`) or run the container as root (`user: "0:0"` in compose). Publishing the port via bridge networking does **not** work, because the Marstek discovery packets are UDP broadcasts to the subnet address and aren't forwarded by Docker's port mapping.
1016+
10151017
### I get parsing errors on startup or the app crashes.
10161018

10171019
A: Common causes:

0 commit comments

Comments
 (0)