docs: add traefik to reverse proxy list#547
docs: add traefik to reverse proxy list#547omidzadey wants to merge 26 commits intog0ldyy:developmentfrom
Conversation
Add system clock synchronization validation at startup
Development
Centralize HTTP client management and optimize caching system
Development
Add background scraper system with admin dashboard and tracking
Development
feat: implement a custom Kodi setup dialog with dedicated error alerts and expand the Kodi add-on documentation
docs: update README with new badges and rephrased feature description…
refactor: standardize type hints with `typing` module
chore(main): release 2.50.0
Development
Development
chore(main): release 2.51.0
Update stremthru.py
Development
Development
feat: refactor authentication handling in CometNet UI
refactor: simplify session secret handling and remove unnecessary con…
refactor: update require_admin_auth to include default cookie paramet…
Development
chore(main): release 2.52.0
docs: improve documentation
WalkthroughAdds version 2.52.0 changelog entry documenting API prefix support, session management enhancements, authentication refactoring, and related bug fixes. Expands Docker deployment guide with Traefik reverse proxy configuration and integration instructions. Changes
Possibly related PRs
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. Tip Issue Planner is now in beta. Read the docs and try it out! Share your feedback on Discord. 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. Comment |
There was a problem hiding this comment.
Actionable comments posted: 4
🧹 Nitpick comments (1)
docs/beginner/01-get-started-docker.md (1)
193-196: Dropsudo— it's inconsistent with the rest of the guide and discourages proper Docker group setup.Lines 48, 54, and 55 all use
docker composewithoutsudo. This inconsistency may confuse beginners or mask a missing docker-group membership.📝 Proposed fix
-sudo docker compose up -d +docker compose up -d🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/beginner/01-get-started-docker.md` around lines 193 - 196, The command snippet uses "sudo docker compose up -d" which is inconsistent with other occurrences using "docker compose" and encourages skipping proper Docker group setup; update the snippet to remove "sudo" so it reads "docker compose up -d" to match the rest of the guide and add (if desired) a short note elsewhere about adding the user to the docker group rather than using sudo.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@docs/beginner/01-get-started-docker.md`:
- Around line 78-79: Update the docs to resolve the contradiction between the
"Ports 443 and 80 open" requirement and the Traefik configuration that only maps
443 and uses tlschallenge (TLS-ALPN-01): either remove the mention of port 80
from the requirements, or modify the Traefik compose snippet to also expose port
80 and add an HTTP entrypoint plus a redirect middleware to forward all http://
requests to HTTPS (ensure the compose service maps 80:80 and that the Traefik
static config declares an "http" entrypoint and a middleware for
RedirectScheme/HTTPS), and apply the same change to the other occurrence
referenced (lines 119-120).
- Line 112: Replace nonstandard fenced code block language identifiers
"traefik", "cometlabels", and "cometlabelexample" with the standard "yaml" token
so syntax highlighting works (i.e., change ```traefik, ```cometlabels,
```cometlabelexample to ```yaml); also add the "bash" identifier to the bare
shell snippet (change ``` to ```bash) for the `docker compose up -d` command;
update the three YAML snippets and the shell snippet accordingly where those
tokens appear.
- Line 129: Replace the default '--log.level=DEBUG' setting in the beginner
Docker guide with a less verbose default (e.g., '--log.level=INFO' or
'--log.level=WARN') and update the surrounding text to mention that DEBUG is
available for troubleshooting if needed; locate the literal flag
'--log.level=DEBUG' in the document and change it and the explanatory note
accordingly.
- Around line 166-167: Remove the host port mapping for the Comet service in the
Traefik example: delete the ports: - "8000:8000" entry from the Comet service
(so Traefik is the only ingress), ensure the Comet service remains attached to
the Docker network used by Traefik and keeps the traefik labels/entrypoints so
Traefik can route to it; do not map container ports to the host to avoid
bypassing TLS and Traefik middleware.
---
Nitpick comments:
In `@docs/beginner/01-get-started-docker.md`:
- Around line 193-196: The command snippet uses "sudo docker compose up -d"
which is inconsistent with other occurrences using "docker compose" and
encourages skipping proper Docker group setup; update the snippet to remove
"sudo" so it reads "docker compose up -d" to match the rest of the guide and add
(if desired) a short note elsewhere about adding the user to the docker group
rather than using sudo.
| * An A record on your domain pointing towards your IP. | ||
| * Ports 443 and 80 open. |
There was a problem hiding this comment.
Port 80 requirement contradicts the Traefik config, and no HTTP→HTTPS redirect is provided.
Line 79 tells users to open port 80, but the Traefik compose snippet only maps 443:443. The chosen tlschallenge (TLS-ALPN-01) does not need port 80, so the requirement is misleading. As a side-effect, plain http://comet.example.com requests will fail with a connection refused instead of redirecting to HTTPS.
Consider either removing port 80 from the requirements text, or adding an HTTP entrypoint with a redirect middleware:
📝 Suggested addition to expose port 80 and redirect to HTTPS
ports:
- 443:443
+ - 80:80
command:
...
+ - "--entryPoints.web.address=:80"
+ - "--entryPoints.web.http.redirections.entryPoint.to=websecure"
+ - "--entryPoints.web.http.redirections.entryPoint.scheme=https"
- "--entryPoints.websecure.address=:443"Also applies to: 119-120
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@docs/beginner/01-get-started-docker.md` around lines 78 - 79, Update the docs
to resolve the contradiction between the "Ports 443 and 80 open" requirement and
the Traefik configuration that only maps 443 and uses tlschallenge
(TLS-ALPN-01): either remove the mention of port 80 from the requirements, or
modify the Traefik compose snippet to also expose port 80 and add an HTTP
entrypoint plus a redirect middleware to forward all http:// requests to HTTPS
(ensure the compose service maps 80:80 and that the Traefik static config
declares an "http" entrypoint and a middleware for RedirectScheme/HTTPS), and
apply the same change to the other occurrence referenced (lines 119-120).
|
|
||
| Add the following example from below into your compose file: | ||
|
|
||
| ```traefik |
There was a problem hiding this comment.
Use standard language identifiers on all fenced code blocks.
traefik, cometlabels, and cometlabelexample are not recognised language tokens, so no syntax highlighting is applied. Line 194 has no identifier at all (flagged as MD040 by markdownlint). All three snippets contain YAML; the bare shell command should be bash.
📝 Proposed fixes
-```traefik
+```yaml-```cometlabels
+```yaml-```cometlabelexample
+```yaml-```
+```bash
sudo docker compose up -dAlso applies to: 150-150, 160-160, 194-194
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@docs/beginner/01-get-started-docker.md` at line 112, Replace nonstandard
fenced code block language identifiers "traefik", "cometlabels", and
"cometlabelexample" with the standard "yaml" token so syntax highlighting works
(i.e., change ```traefik, ```cometlabels, ```cometlabelexample to ```yaml); also
add the "bash" identifier to the bare shell snippet (change ``` to ```bash) for
the `docker compose up -d` command; update the three YAML snippets and the shell
snippet accordingly where those tokens appear.
| - '--global.sendAnonymousUsage=false' | ||
| - '--global.checkNewVersion=false' | ||
| - '--log=true' | ||
| - '--log.level=DEBUG' |
There was a problem hiding this comment.
DEBUG log level is not appropriate as a default for a beginner setup guide.
This will produce extremely verbose output and may obscure important messages. Consider defaulting to INFO or WARN and noting that DEBUG is available for troubleshooting.
📝 Proposed fix
- - '--log.level=DEBUG'
+ - '--log.level=INFO'📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| - '--log.level=DEBUG' | |
| - '--log.level=INFO' |
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@docs/beginner/01-get-started-docker.md` at line 129, Replace the default
'--log.level=DEBUG' setting in the beginner Docker guide with a less verbose
default (e.g., '--log.level=INFO' or '--log.level=WARN') and update the
surrounding text to mention that DEBUG is available for troubleshooting if
needed; locate the literal flag '--log.level=DEBUG' in the document and change
it and the explanatory note accordingly.
| ports: | ||
| - "8000:8000" |
There was a problem hiding this comment.
Remove ports from the Comet service in the Traefik example — it bypasses the proxy entirely.
Keeping ports: - "8000:8000" means Comet is reachable directly on host port 8000 in addition to Traefik on 443, bypassing TLS, any access controls, and any Traefik middleware. Traefik reaches backend containers through the shared Docker network and does not require host-port mapping.
🛡️ Proposed fix
- ports:
- - "8000:8000"📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| ports: | |
| - "8000:8000" |
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@docs/beginner/01-get-started-docker.md` around lines 166 - 167, Remove the
host port mapping for the Comet service in the Traefik example: delete the
ports: - "8000:8000" entry from the Comet service (so Traefik is the only
ingress), ensure the Comet service remains attached to the Docker network used
by Traefik and keeps the traefik labels/entrypoints so Traefik can route to it;
do not map container ports to the host to avoid bypassing TLS and Traefik
middleware.

Added setup information for traefik and added more info to the start of the reverse proxy section.
Summary by CodeRabbit
New Features
Bug Fixes
Documentation