Compare commits
10 Commits
0.2.0+v1.6
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| 9fa5e949fd | |||
| cab64b3a26 | |||
| 7ee486c156 | |||
| 608f5d805a | |||
| 8530a5fae2 | |||
| dde7691e53 | |||
| ebbd2e57dc | |||
| e75aba093d | |||
| a707387872 | |||
| 5f66e5ba2d |
@ -1,4 +1,5 @@
|
||||
TYPE=mumble
|
||||
ENABLE_BACKUPS=true
|
||||
|
||||
DOMAIN=mumble.example.com
|
||||
|
||||
@ -7,6 +8,7 @@ DOMAIN=mumble.example.com
|
||||
LETS_ENCRYPT_ENV=production
|
||||
ENV=production
|
||||
|
||||
|
||||
# This is here so later lines can extend it; you likely don't wanna edit
|
||||
COMPOSE_FILE="compose.yml"
|
||||
|
||||
@ -22,6 +24,12 @@ COMPOSE_FILE="compose.yml"
|
||||
## SuperUser Password
|
||||
SECRET_SUPERUSER_PASSWORD_VERSION=v1
|
||||
|
||||
## Host-port Mode
|
||||
# If enabled, the app container will bind directly to the host's port 64738,
|
||||
# bypassing traefik's entrypoint.
|
||||
# This is not recommended for multinode setups.
|
||||
#COMPOSE_FILE="$COMPOSE_FILE:compose.host-ports.yml"
|
||||
|
||||
#################
|
||||
# MUMBLE CONFIG #
|
||||
#################
|
||||
|
||||
23
README.md
23
README.md
@ -8,10 +8,10 @@ Low latency, high quality voice chat application.
|
||||
|
||||
* **Maintainer**: [@amras](https://git.coopcloud.tech/amras)
|
||||
* **Category**: Apps
|
||||
* **Status**: 1, alpha
|
||||
* **Status**: 3, stable
|
||||
* **Image**: [mumblevoip/mumble-server](https://hub.docker.com/r/mumblevoip/mumble-server), 4, official
|
||||
* **Healthcheck**: No
|
||||
* **Backups**: No
|
||||
* **Healthcheck**: Yes
|
||||
* **Backups**: Yes
|
||||
* **Email**: N/A
|
||||
* **Tests**: No
|
||||
* **SSO**: N/A
|
||||
@ -68,6 +68,23 @@ $ abra app secret insert <YOURAPPDOMAIN> server-pw v1
|
||||
$ abra app deploy <YOURAPPDOMAIN> --force
|
||||
```
|
||||
|
||||
## Host-Port Mode
|
||||
|
||||
Instead of modifying the Traefik config,
|
||||
you can alternatively deploy Mumble with compose.host-ports.yml,
|
||||
and it will bind directly to the host server port 64738,
|
||||
bypassing Traefik.
|
||||
|
||||
This is not recommended for multinode setups, since the client would have to connect directly to whichever node is running the app container, but this does work when deployed to a single server.
|
||||
|
||||
With this compose file, you can deploy mumble without any changes to the Traefik config:
|
||||
|
||||
1. `abra app config <YOURAPPDOMAIN>` — uncomment the line:
|
||||
```
|
||||
COMPOSE_FILE="$COMPOSE_FILE:compose.host-ports.yml"
|
||||
```
|
||||
2. `abra app deploy <YOURAPPDOMAIN> --force`
|
||||
|
||||
[`abra`]: https://git.coopcloud.tech/coop-cloud/abra
|
||||
[`coop-cloud/traefik`]: https://git.coopcloud.tech/coop-cloud/traefik
|
||||
[Mumble client]:(https://www.mumble.info/downloads/)
|
||||
|
||||
14
compose.host-ports.yml
Normal file
14
compose.host-ports.yml
Normal file
@ -0,0 +1,14 @@
|
||||
---
|
||||
version: "3.8"
|
||||
|
||||
services:
|
||||
app:
|
||||
ports:
|
||||
- target: 64738
|
||||
published: 64738
|
||||
protocol: tcp
|
||||
mode: host
|
||||
- target: 64738
|
||||
published: 64738
|
||||
protocol: udp
|
||||
mode: host
|
||||
13
compose.yml
13
compose.yml
@ -51,6 +51,12 @@ services:
|
||||
MUMBLE_CONFIG_ROLLINGSTATSWINDOW: ${ROLLING_STATS_WINDOW:-300}
|
||||
MUMBLE_CONFIG_LISTENERSPERCHANNEL: ${LISTENERS_PER_CHANNEL:--1}
|
||||
MUMBLE_CONFIG_LISTENERSPERUSER: ${LISTENERS_PER_USER:--1}
|
||||
healthcheck:
|
||||
test: ["CMD-SHELL", "bash -c 'echo > /dev/tcp/localhost/64738'"]
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 10
|
||||
start_period: 30s
|
||||
deploy:
|
||||
restart_policy:
|
||||
condition: on-failure
|
||||
@ -64,7 +70,12 @@ services:
|
||||
- "traefik.udp.routers.${STACK_NAME}.entrypoints=mumble-udp"
|
||||
- "traefik.udp.routers.${STACK_NAME}.service=${STACK_NAME}-udp-service"
|
||||
- "traefik.udp.services.${STACK_NAME}-udp-service.loadbalancer.server.port=64738"
|
||||
- "coop-cloud.${STACK_NAME}.version=0.2.0+v1.6.870-0"
|
||||
- "backupbot.backup=${ENABLE_BACKUPS:-true}"
|
||||
- 'backupbot.backup.pre-hook=sqlite3 /data/mumble-server.sqlite ".backup /data/backup.sqlite"'
|
||||
- "backupbot.backup.post-hook=rm -f /data/backup.sqlite"
|
||||
- "backupbot.backup.volumes.mumble_data.path=backup.sqlite"
|
||||
- "backupbot.restore.post-hook=mv /data/backup.sqlite /data/mumble-server.sqlite"
|
||||
- "coop-cloud.${STACK_NAME}.version=1.0.0+v1.6.870-0"
|
||||
|
||||
secrets:
|
||||
superuser-pw:
|
||||
|
||||
4
release/1.0.0+v1.6.870-0
Normal file
4
release/1.0.0+v1.6.870-0
Normal file
@ -0,0 +1,4 @@
|
||||
- Upgrade from status: 1, alpha to status: 3, stable
|
||||
- Healthchecks introduced (checking for open port)
|
||||
- Backups introduced (full sqlite database)
|
||||
- Host-port mode can now optionally be used (see README for details)
|
||||
Reference in New Issue
Block a user