command: run --config /etc/caddy.yaml --adapter yaml
c. Service/unit/compose file:
LiveKit requires host networking, which is only available on Linux
# This compose will not function correctly on Mac or Windows
version: "3.9"
services:
caddy:
image: livekit/caddyl4
command: run --config /etc/caddy.yaml --adapter yaml
restart: unless-stopped
network_mode: "host"
volumes:
- ./caddy.yaml:/etc/caddy.yaml
- ./caddy_data:/data
livekit:
image: livekit/livekit-server:latest
command: --config /etc/livekit.yaml
restart: unless-stopped
network_mode: "host"
volumes:
- ./livekit.yaml:/etc/livekit.yaml
redis:
image: redis:6-alpine
command: redis-server /etc/redis.conf
network_mode: "host"
volumes:
- ./redis.conf:/etc/redis.conf
But I don’t know anything about caddy so I am having trouble applying
the preferred_chains option correctly
to the config without breaking it.
I want this option to be set for all domains.
This will match only a chain whose root matches that name.
If you used any_common_name then it would look at any link in the chain, not just the root. And it seems from your LE community forum thread that the problem is your client not checking intermediate certs for trust, but only checking the root, i.e. DST Root CA X3 which is still used for compatibility reasons. See Certificate Compatibility - Let's Encrypt
A fellow NixOS user!
Just be aware that NixOS 22.05 is EOL.
The latest stable channel is NixOS 22.11, following the usual 6-month release cycle.
Regarding your TLS issues:
Element (Matrix.org client) and Jitsi have similar TLS problems, both on Android and iOS, with LE.
A common workaround is to use a ZeroSSL certificate instead.
Might be worth a try in your case as well, especially since Caddy supports ZeroSSL out of the box.
Though it should be noted that I am not familiar with LiveStack or how Flutter might handle the trust chain.
A few references to issues around encrypted TURN and LE:
Oh hi @emilylange we are becoming more and more, haha
23.05 … it was a typo, but thanks for the reminder.
For the sake of completeness, this was the config did what I wanted to do (I confirmed it with SSLabs, that only one chain was served.
But the TLS issue did not go away.