Add example caddy-docker-proxy configuration to livekit documentation #1762
No reviewers
Labels
No labels
Abandoned
Blocked
Bug
Changelog
Added
Changelog
Missing
Changelog
None
Cherry-picking
Database
Dependencies
Dependencies/Renovate
Difficulty
Easy
Difficulty
Hard
Difficulty
Medium
Documentation
Enhancement
Good first issue
Help wanted
Inherited
Matrix/Administration
Matrix/Appservices
Matrix/Auth
Matrix/Client
Matrix/Core
Matrix/E2EE
Matrix/Federation
Matrix/Hydra
Matrix/MSC
Matrix/Media
Matrix/T&S
Merge
Merge/Manual
Merge/Squash
Meta
Meta/CI
Meta/Packaging
Priority
Blocking
Priority
High
Priority
Low
Security
Status
Confirmed
Status
Duplicate
Status
Invalid
Status
Needs Investigation
Support
No milestone
No project
No assignees
3 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
continuwuation/continuwuity!1762
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "Cease/continuwuity:main"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
This pull request adds a full docker-compose example configuration using caddy-docker-proxy to the livekit section of the documentation
Pull request checklist:
mainbranch, and the branch is named something other thanmain.myself, if applicable. This includes ensuring code compiles.
Hi Cease and thanks for the PR. As discussed in the mrtc room, would you mind only include the needed Caddy labels for livekit, jwt, and caddy? I'll leave some other comments below too
FYI, the example caddy labels have been updated (normal version, and delegated version)
See review comments
@ -190,0 +190,4 @@<details><summary>Example full docker compose file with caddy-docker-proxy</summary>```yaml# This example uses a separate TURN server that is configured separately to provide backwardsReferences to coturn could be removed entirely, to keep this short
fixed
@ -190,0 +209,4 @@networks:- caddylabels:caddy: livekit.example.domainPlease use
example.comto be consistent with docs, for this instance and all other instances in your additionsfixed
@ -190,0 +233,4 @@- "7881:7881/tcp"- "50100-50200:50100-50200/udp"turn:References to TURN could be removed entirely
removed turn mentions
@ -190,0 +258,4 @@restart: unless-stoppedlabels:caddy: example.domaincaddy.0_header: "*"I'm not sure if the header labels are needed, since Continuwuity can function fine without them (and actually set the ACAO header itself). Do let me know if this is needed for any reason
I had issues with this when I was setting up livekit initially - but that was a good while ago. I'll leave them commented out and add some details so people can uncomment them if they need them
@ -190,0 +264,4 @@caddy.0_header.Access-Control-Allow-Headers: "Authorization"caddy.0_header.Content-Type: "application/json"caddy.1_respond: /.well-known/matrix/server {"m.server":"matrix.example.domain:443"}caddy.2_respond: /.well-known/matrix/client {"m.server":{"base_url":"https://matrix.example.domain"},"m.homeserver":{"base_url":"https://matrix.example.domain"},"org.matrix.msc4143.rtc_foci":[{"type":"livekit","livekit_service_url":"https://livekit.example.domain"}]}It's good to also include the option to reverse proxy .well-knowns back to continuwuity
Perhaps add some commented-out lines with the following:
added
@ -190,0 +293,4 @@- caddylabels:caddy: matrix.example.domaincaddy.reverse_proxy: "{{upstreams 6167}}"s/6167/8008 to use the default port. Then the entire
environment:section can be removed@ -190,0 +296,4 @@caddy.reverse_proxy: "{{upstreams 6167}}"volumes:volumes:andnetworks:may be removed if all the container snippets are just focused on labels, e.g.:fixed
d5ae34078aaa795dab7aLGTM
f3b178b33386e75f064a86e75f064a817821b073Maintainers don't merge, gonna review a bit
@ -190,0 +267,4 @@volumes:db:networks:Currently,
networksis missing in thehomeserverservice, but available on all other containers, which can be confusing. I think it's better to removenetworks:entirely including this global definitionfixed
SFLR, I requested some changes. Lemme know what you think
@ -190,0 +190,4 @@<details><summary>Example docker compose file with caddy-docker-proxy labels</summary>```yamlservices:Since we'll be removing all
networks:attribute, let's add a comment at the top saying that this setup assumes all containers share the same bridge networkfixed
@ -190,0 +202,4 @@caddy.@lk-jwt-service.path: "/sfu/get* /healthz* /get_token*"caddy.reverse_proxy: "@lk-jwt-service {{upstreams 8081}}"ports:- "8081:8081"this wouldn't be needed in a Docker bridge network
fixed
@ -190,0 +218,4 @@volumes:- ./livekit.yaml:/etc/livekit.yaml:roports:- "127.0.0.1:7880:7880/tcp"this wouldn't be needed in a Docker bridge network
fixed
@ -190,0 +239,4 @@- ./data:/datarestart: unless-stoppedlabels:# If you are having problems with continuwuity serving headers uncommentLet's move the header stuff below the
.well-knownstufffixed
@ -190,0 +225,4 @@caddy:# This compose file uses caddy-docker-proxy as the reverse proxy for Continuwuity!# For more info, visit https://github.com/lucaslorentz/caddy-docker-proxyThese 2 lines of comments can be removed
@ -190,0 +249,4 @@# caddy.0_header.Access-Control-Allow-Headers: "Authorization"# caddy.0_header.Content-Type: "application/json"# If you already configured `[global.well_known]` with Continuwuity,Let's move the
.well-knownstuff above the headers stuff - they're more important contextuallyfixed
@ -190,0 +258,4 @@homeserver:image: forgejo.ellis.link/continuwuation/continuwuity:latestrestart: unless-stopped# add additional environment and network config here...environment, volume, and network config
fixed
@ -190,0 +264,4 @@caddy.reverse_proxy: "{{upstreams 8008}}"volumes:The
volumes:stuff can be removedfixed
You may wanna add a newsfrag describing your additions and crediting yourself :)
LGTM. Maintainers pls merge
14c2c18fabbb48bd50bb