Updating the mumble recipe #1
Reference in New Issue
Block a user
No description provided.
Delete Branch "newmumble"
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?
autonomic mumble from the old times was having issues, so decided to update the recipe to the latest to host our own
appears to be working. was able to use same port publishing pattern I was using in another recipe recently for lasuite-meet
addition of a web client was a nice bonus
the old 3 year update cycle ... I assume this is probably fine to merge but cc @3wordchant
@ -11,0 +15,4 @@# Mumble uses its own protocol on port 64738 (TCP+UDP), not HTTP.# Published directly on the host — cannot be proxied through Traefik# without custom entrypoints.ports:Benefits of this over https://git.coopcloud.tech/coop-cloud/traefik/src/branch/master/compose.mumble.yml?
Update looks good. Personally it seems confusing not to centralise port config in Traefik but 🤷
@3wordchant ty for taking a look. I see pros/cons of each approach to the ports thing
pro of centralizing in traefik is:
pro of the port config in the recipe is:
Maybe let's discuss in
#coopcloud-tech? I see the "easier" argument (although uncommenting 1 line inabra app config traefik...and redeploying it doesn't seem nightmarish in the scheme of things) but it feels like apps opening their own ports might be unexpected security-wise.@3wordchant want to link this PR into the #coopcloud-tech chat?
I guess for me, as I was trying to understand a recipe, I found it unexpected when there was "action at a distance" and there were also necessary related code changes in another recipe (traefik), even if small. having to touch two repositories instead of one. but I'm not sure how to weigh the approach either way for security
more host port half-related stuff here: coop-cloud/traefik#88
For my usecase, host ports would also break multi-node setups, so I'd like to avoid them being the default.
Would it be possible to break out the host ports to a compose file, and let the operator choose?
@ -0,0 +1,6 @@#!/bin/shset -e[ -f /run/secrets/su_password ] && export MUMBLE_SUPERUSER_PASSWORD="$(cat /run/secrets/su_password)"The mumble-server recipe can read secrets directly. Imo, it'd be cleaner to skip the entrypoint and just set those secrets like this:
a2e9b642bc. Thoughts?@amras I'm a bit confused (maybe missing something)
from:
a2e9b642bcdoes this work?
is this target supposed to set an environment variable? or is this supposed to do something else?
we had a thread with docker inc. at some point because they do not support injecting secrets into env variables like this
or mumble reads that value from a file with that name? I just haven't been able to find documentation about that
that sounds doable to put this in a second compose file in mumble. @3wordchant are you ok with this from security perspective if its optional, or should we still start a thread about it in cc matrix?
Yes, sounds perfect
@notplants
Seems to! My test deployments on that commit are checking against the appropriate passwords.
Apologies, I forgot to link the docs from the mumble docker image:
(side note: the example in the same doc uses
MUMBLE_SUPERUSER_PASSWORDrather thanMUMBLE_CONFIG_SUPERUSER_PASSWORD, unclear what's happening there)So to answer:
No environment variables are being set;
target:just populates/run/secrets/MUMBLE_CONFIG_SERVER_PASSWORDand/run/secrets/MUMBLE_SUPERUSER_PASSWORD.thank you for the clarification @amras !
I just had some confusion because I had somehow only found the documentation about
mumble.iniand environment variables beforebut looks good. I'll work on modifying the PR to use the secret method you suggested and moving host port mode to a separate compose file
@notplants actually, wondering if we could break up this work into 3 PRs?
mumble.iniready: #3 . I would appreciate your CR since you worked on this as well!@amras sounds good.
The comprehensive config PR you are making looks good. I will also look at it more closely soon.
For what its worth, a month ago, autonomic decided we needed a new mumble because one autonomic member was having trouble connecting with our old instance. So I updated the recipe here spontaneously, with what is in this current PR, and we have been using it "live" for a month since then, even though it wasn't merged.
Just giving context on how this PR here got here. I'm glad though you are bringing a more thorough approach to the recipe and its long-term maintenance.
I will need to figure out how to merge back whatever we do here into the live autonomic instance, but it seems like that will not be a big task.
@amras I have separated the parts 1 and 3 in their own PRs: #4 and #5
also just looked a bit more closely at #3 and LGTM
should we close this PR now that is separated into the other parts?
Agreed.
Pull request closed