Poradnik
Postaw własny serwer Mumble
Mumcord nie potrzebuje specjalnego serwera: wystarczy zwykły serwer Mumble. Z Dockerem twój ruszy w około 15 minut, nawet jeśli robisz to pierwszy raz.
- 64738 port, TCP i UDP
- 1 rdzeń i 512 MB RAM obsłużą kilkadziesiąt osób
- 0 € open source; płacisz tylko za maszynę
W ośmiu krokach
-
Wybierz maszynę
Najprościej wziąć mały serwer z Linuxem od dostawcy hostingu („VPS” za kilka euro miesięcznie). Działa całą dobę i ma stały adres. Komputer w domu albo Raspberry Pi też się nada; wtedy musisz otworzyć port na routerze (krok 5).
Mumble potrzebuje bardzo mało mocy. Ważniejsze jest łącze: każda mówiąca osoba zużywa około 40–100 kbit/s.
-
Zainstaluj Dockera
Zaloguj się na serwer przez SSH. Na Linuxie to polecenie instaluje Dockera razem z Compose. Na Windowsie i macOS użyj zamiast tego Docker Desktop.
Terminal curl -fsSL https://get.docker.com | sudo sh docker compose versionJeśli widzisz numer wersji, wszystko gotowe.
-
Utwórz folder i hasło
Utwórz folder i wygeneruj losowe hasło do konta administratora
SuperUser:Terminal mkdir -p ~/mumble && cd ~/mumble openssl rand -base64 24.env # Stays on the server. Never share it in Git, chats or screenshots. SUPERUSER_PASSWORD=paste-the-random-password-here SERVER_PASSWORD=Zapisz drugi plik jako
.envi wklej wygenerowane hasło (na przykład przeznano .env). Jeśli nie każdy, kto zna adres, ma wejść, ustawSERVER_PASSWORD, które przekażesz swoim ludziom. Potemchmod 600 .envodcina od pliku innych użytkowników maszyny. -
Plik docker-compose.yml
Ten plik trafia do tego samego folderu jako
docker-compose.yml. Zmień nazwę serwera i tekst powitalny, jak chcesz; reszta może zostać bez zmian.docker-compose.yml # Mumble server for Mumcord and any other Mumble client name: mumble services: mumble-server: image: mumblevoip/mumble-server:v1.5.735 # pinned version; raise it here to update restart: unless-stopped ports: - "64738:64738/tcp" # connection and chat - "64738:64738/udp" # voice volumes: - data:/data # channels, registrations and certificate environment: # Passwords come from the .env file next to this one, never straight in here. MUMBLE_SUPERUSER_PASSWORD: ${SUPERUSER_PASSWORD:?SUPERUSER_PASSWORD is missing in .env} MUMBLE_CONFIG_SERVER_PASSWORD: ${SERVER_PASSWORD:-} # empty = anyone with the address can join MUMBLE_CONFIG_REGISTER_NAME: "Our Server" # name of the top channel MUMBLE_CONFIG_WELCOME_TEXT: "Welcome! Say hi in the chat." # pinned at the top of the chat in Mumcord MUMBLE_CONFIG_USERS: "50" # at most this many at once MUMBLE_CONFIG_IMAGE_MESSAGE_LENGTH: "1048576" # images in chat up to 1 MB (default: 128 KB) MUMBLE_CONFIG_TEXT_MESSAGE_LENGTH: "10000" # longer messages (default: 5000 characters) volumes: data:Dwa ostatnie ustawienia są dla Mumcorda: wklejane obrazy mogą być większe, a długie wiadomości nie są ucinane. Każde inne ustawienie działa według tego samego wzoru
MUMBLE_CONFIG_…, zobacz dokumentację obrazu. -
Uruchom i otwórz port
Uruchom serwer i zerknij do logu:
Terminal docker compose up -d docker compose logs -f # Ctrl+C only stops the outputGdy pojawi się
Server listening on 0.0.0.0:64738, serwer działa. Teraz port 64738 dla TCP i UDP musi być osiągalny z zewnątrz:Serwer z firewallem (na przykład ufw):
sudo ufw allow 64738/tcpisudo ufw allow 64738/udp. Niektórzy dostawcy mają też firewall w panelu klienta.Komputer w domu: ustaw na routerze przekierowanie portu 64738 TCP i UDP na ten komputer.
-
Połącz się Mumcordem
W Mumcordzie kliknij + na pasku serwerów i wpisz adres IP lub nazwę swojego serwera. Nazwa jest wygodniejsza niż IP: utwórz u dostawcy domeny rekord A, np.
voice.example.org, wskazujący na to IP.Przy pierwszym połączeniu Mumcord pokazuje odcisk certyfikatu. Tak ma być: serwer przy pierwszym starcie utworzył własny certyfikat. Potwierdź go raz; jeśli później niespodziewanie się zmieni, Mumcord cię ostrzeże.
-
Zaproś ludzi
Wyślij swoim ludziom link. Kliknięcie otwiera Mumcorda (lub dowolnego innego klienta Mumble) i od razu łączy; dodaj na końcu nazwę kanału, by trafić na właściwy kanał:
Terminal mumble://voice.example.org mumble://voice.example.org/GamingKto nie ma jeszcze Mumcorda, znajdzie go na mumcord.app. Hasło serwera wyślij osobno, nie razem z linkiem.
-
Skonfiguruj kanały i uprawnienia
Tworzenie kanałów i nadawanie uprawnień pojawi się w Mumcordzie w Epic 4. Do tego czasu użyj raz oficjalnego klienta Mumble:
1. Połącz się z nazwą użytkownika
SuperUseri hasłem z.env.2. Kliknij prawym przyciskiem górny kanał → Dodaj, dla każdego kanału, który chcesz mieć.
3. Żeby nie potrzebować za każdym razem SuperUsera: połącz się Mumcordem pod własnym nickiem i kliknij swój nick w lewym dolnym rogu → Zarejestruj się na tym serwerze. Potem jako SuperUser: górny kanał → Edytuj → Grupy → dodaj swój nick do grupy
admin.
Utrzymanie i problemy
Jak zaktualizować serwer?
Wpisz nową wersję po image: w docker-compose.yml (lista na Docker Hub), a potem uruchom docker compose pull i docker compose up -d. Kanały i rejestracje zostają zachowane.
Jak zrobić kopię zapasową?
Wszystko, co ważne, jest w wolumenie mumble_data. Zatrzymaj, spakuj, wznów: docker compose stop, potem docker run --rm -v mumble_data:/data -v "$PWD":/backup alpine tar czf /backup/mumble-backup.tar.gz -C /data . i na koniec docker compose start.
Nikt nie może połączyć się z serwerem.
Prawie zawsze port jest zamknięty. Sprawdź przez docker compose ps, czy kontener działa, potem firewall, firewall dostawcy i router (krok 5). Jeśli serwer stoi w domu, z wnętrza własnej sieci publiczny adres może być nieosiągalny; wtedy testuj z lokalnym IP.
Połączenie działa, ale głos się opóźnia.
Zwykle otwarty jest tylko TCP, a nie UDP. Mumcord sam przechodzi wtedy na TCP. To działa, ale wolniej. Otwórz też UDP 64738.
Nie pamiętam hasła SuperUser.
Wpisz nowe w .env i uruchom docker compose up -d. Serwer stosuje je przy każdym starcie.
Więcej pomocy znajdziesz w wiki i w zgłoszeniach na GitHubie. Wiki → Issues →