Chat that is simple, secure, and private
Go to file
3wc ad5aa4da27
continuous-integration/drone/push Build is passing Details
Switch to self-hosted stack-ssh-deploy image [mass update]
2023-01-21 11:49:56 -08:00
.drone.yml Switch to self-hosted stack-ssh-deploy image [mass update] 2023-01-21 11:49:56 -08:00
.env.sample fix: external coturn, better certs 2022-01-09 15:05:14 +01:00
.gitignore Initial commit 2021-10-12 11:35:23 +00:00
README.md docs: forks gone, still experimental [ci skip] 2022-01-19 15:24:34 +01:00
abra.sh fix: get back on mainline 2022-01-19 15:20:57 +01:00
cert-monitor.sh.tmpl fix: get back on mainline 2022-01-19 15:20:57 +01:00
compose.coturn-int.yml fix: external coturn, better certs 2022-01-09 15:05:14 +01:00
compose.yml chore: manually publish potential label 2022-01-23 18:27:18 +01:00
entrypoint.sh.tmpl fix: external coturn, better certs 2022-01-09 15:05:14 +01:00
http.template.tmpl fix: get back on mainline 2022-01-19 15:20:57 +01:00
prosody.cfg.lua.tmpl fix: get back on mainline 2022-01-19 15:20:57 +01:00
start-coturn.sh.tmpl fix: get back on mainline 2022-01-19 15:20:57 +01:00

README.md

snikket

It's very experimental and we're forking a number of configs right now, see the issues list for more.

Chat that is simple, secure, and private.

Tricks & Tips

Post-deploy steps

The certs service needs to copy over the right certificates from traefik. If you're deploying for the first time, then this could take a minute. Once the certs are copied over, you'll have to manually restart the app service and potentially the server service.

abra app logs <yoursnikket> certs 
abra app run <yoursnikket> server ls -lha /certs
abra app restart <yoursnikket> server  # check logs to see it picks up certs
abra app restart <yoursnikket> app # your ${DOMAIN} web log in should work now

DNS requirements

You need 3 A records, pointing to the same IP.

  • chat.foo.com: main web log in
  • share.chat.foo.com: file upload
  • groups.chat.foo.com: muc support

Create admin invite

abra app run <app> server create-invite --admin --group default

How does the coturn setup work?

We default to using an external coturn to support the homebrew server as a first class citizen. coturn is known to not work at all if behind a NAT and is better served directlry from a ipv4. For homebrew setups (behind router), it's better to dial out to an external coturn server. Hence, you'll need to bring your own coturn server configuration to use this recipe.

If you want to use the internal Snikket coturn setup, use the following:

COMPOSE_FILE="compose.yml:compose.coturn-int.yml"

There are issues with exposing the required amount of ports, please see #5.