netbird icon indicating copy to clipboard operation
netbird copied to clipboard

[infrastructure] Change NETBIRD_SIGNAL_PORT mapping from 80 to 10000

Open alfkonee opened this issue 1 month ago • 5 comments

I found that the signal port is 10000 in the container logs. That's why this change is being made.

Describe your changes

During my deployment I found that peers were not able to connect upon checking the logs, I saw that the service was running on the same port as the default signal port. As such, I made this change to fix the port 80 issue.

Issue ticket number and link

#4755 and probably a few others

Stack

Checklist

  • [x] Is it a bug fix
  • [ ] Is a typo/documentation fix
  • [ ] Is a feature enhancement
  • [ ] It is a refactor
  • [ ] Created tests that fail without the change (if possible)

By submitting this pull request, you confirm that you have read and agree to the terms of the Contributor License Agreement.

Documentation

Select exactly one:

  • [ ] I added/updated documentation for this change
  • [x] Documentation is not needed for this change (explain why)

the default port specified is the same as this fix

Docs PR URL (required if "docs added" is checked)

Paste the PR link from https://github.com/netbirdio/docs here:

https://github.com/netbirdio/docs/pull/__

Summary by CodeRabbit

  • Chores
    • Updated Signal service port mapping from 80 to 10000 for improved network port management in deployment environments.

✏️ Tip: You can customize this high-level summary in your review settings.

alfkonee avatar Dec 11 '25 22:12 alfkonee

CLA assistant check
All committers have signed the CLA.

CLAassistant avatar Dec 11 '25 22:12 CLAassistant

[!NOTE]

Other AI code review bot(s) detected

CodeRabbit has detected other AI code review bot(s) in this pull request and will avoid duplicating their findings in the review comments. This may lead to a less comprehensive review.

📝 Walkthrough

Walkthrough

Updated the Signal service port mapping in docker-compose.yml.tmpl from 80:80 to 10000:80. This exposes the Signal service on host port 10000 instead of port 80, while the internal container port remains unchanged at 80. No logic or control flow modifications.

Changes

Cohort / File(s) Change Summary
Docker Compose Configuration Update
infrastructure_files/docker-compose.yml.tmpl
Updated Signal service port mapping from 80:80 to 10000:80 (host:container)

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~2 minutes

Possibly related issues

  • #4871 — Addresses the Signal service port-mapping configuration to expose host port 10000 instead of 80.
  • #4762 — Directly resolves the Signal service port mapping mismatch in docker-compose.yml.tmpl by updating the external port to 10000.

Poem

🐰 Hops with joy
From port eighty, we leap to ten-thousand,
Signal service takes flight on its base,
No more conflicts in network's cascade—
Our rabbit applauds this mapping's new place! ✨

Pre-merge checks and finishing touches

✅ Passed checks (3 passed)
Check name Status Explanation
Description check ✅ Passed The description includes most required sections (changes, issue ticket, checklist, documentation) but lacks clarity on why port 80 was problematic and contains some vague statements about the fix.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Title check ✅ Passed The title directly and specifically describes the main change: updating the NETBIRD_SIGNAL_PORT mapping from port 80 to 10000 in the infrastructure configuration.
✨ Finishing touches
  • [ ] 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • [ ] Create PR with unit tests
  • [ ] Post copyable unit tests in a comment

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

coderabbitai[bot] avatar Dec 11 '25 22:12 coderabbitai[bot]

Hi @alfkonee

Are you running with lets encrypt (https) enabled? If so, that might be the issue with port 80 hardcoded. If the certs are set then the signal goes for https/443 instead of 80, causing this mismatch of ports.

But port 10000 will always work due to a fallback for old client versions that rely on it for grpc.

I wonder if you can test the same scenario you are trying to achieve, but with port 443 hardcoded in the place of 10000. If that works it will confirm this point of havint the setup based on TLS/HTTPS that causes signal to listen on port 443.

Then we can figure out a way to handle the internal container port dinamically.

diegocn avatar Dec 18 '25 23:12 diegocn

The port 443 hardcoded is suggested on this other PR -> https://github.com/netbirdio/netbird/pull/4763

diegocn avatar Dec 18 '25 23:12 diegocn