暗黑模式
jitsi 部署
INFO
使用 MASH 部署 jitsi
相关文档
- MASH Readme
- Prerequisites
- Local computer
- Install ansible on ubuntu
- Install passlib:
pip install passlib
- Install just
npm install -g rust-just
- or
npm install -g rust-just
- or
snap install --edge --classic just
- Remote server: ...
- Local computer
- Configuring DNS settings
- Getting the playbook
git clone --depth=1 https://github.com/mother-of-all-self-hosting/mash-playbook.git
- Configuring the playbook
- jitsi role
- Setting up Jitsi
- Configure firewallbash
sudo ufw allow 80/tcp sudo ufw allow 443/tcp sudo ufw allow 4443/tcp sudo ufw allow 10000/udp sudo ufw allow 3478/udp sudo ufw allow 5222/tcp sudo ufw allow 5349/tcp sudo ufw allow 8000/tcp sudo ufw allow 9090/tcp sudo ufw enable
1
2
3
4
5
6
7
8
9
10
- Installing
- Download agru
- Unzip agru, move agru binary to project root dir
- Update roles:
./agru -r templates/requirements.yml
- Fix permission error for WSL
sudo mount -o remount,exec /run/user/1000
- Install sshpass if need:
sudo apt update && sudo apt install sshpass -y
- Install and start:
just install-all --ask-pass
- Adjust UDP buffers
- Keep up to date
示例配置
yml
---
# Put a strong secret below, generated with `pwgen -s 64 1` or in another way
# Various other secrets will be derived from this secret automatically.
mash_playbook_generic_secret_key: 'EEzeadGhGEzGUBEBs7swJsltgNRvLh0slzVQJaCa2c7PGY8JDO3d9U8d4oXY66Id'
mash_playbook_docker_installation_enabled: true
mash_playbook_reverse_proxy_type: playbook-managed-traefik
########################################################################
# #
# jitsi #
# #
########################################################################
jitsi_enabled: true
jitsi_hostname: "kaihui.zldcy.com"
jitsi_enable_auth: true
jitsi_enable_guests: true
jitsi_auth_type: internal
jitsi_prosody_auth_internal_accounts:
- username: qqq
password: www
- username: eee
password: rrr
jitsi_web_config_resolution_width_ideal_and_max: 480
jitsi_web_config_resolution_height_ideal_and_max: 240
jitsi_web_custom_config_extension: |
config.enableLayerSuspension = true;
config.disableAudioLevels = true;
config.channelLastN = 4;
config.requireDisplayName = true;
config.lobby = {
enableChat: true,
autoKnock: true
};
config.securityUi = {
hideLobbyButton: false,
disableLobbyPassword: false
};
config.desktopSharingFrameRate = {
min: 5,
max: 25
};
config.screenshotCapture = {
enabled: false
};
config.breakoutRooms = {
hideAutoAssignButton: true
};
disabledNotifications = ['notify.chatMessages']
########################################################################
# #
# /jitsi #
# #
########################################################################
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
toml
1
Troubleshooting
SSH password
fatal: [kaihui.zldcy.com]: FAILED! => {"msg": "Using a SSH password instead of a key is not possible because Host Key checking is enabled and sshpass does not support this. Please add this host's fingerprint to your known_hosts file to manage this host."}
1
bash
ssh root@x.x.x.x # 手动登录一下即可
1
bash
journalctl -fu mash-jitsi-web
journalctl -fu mash-jitsi-prosody
journalctl -fu mash-jitsi-jicofo
journalctl -fu mash-jitsi-jvb
journalctl -fu jitsi-jvb # on jvb server
1
2
3
4
5
2
3
4
5
Jitsi Admin
https://github.com/H2-invent/jitsi-admin/wiki/Get-Started-English
在 Ansible Playbook 中,--limit
选项用于 限制 Playbook 仅在特定主机或主机组上执行,而不会影响整个 inventory 文件中的所有主机。
基本用法
bash
ansible-playbook site.yml --limit hostname
1
- 只在 hostname 这台主机上执行 Playbook。
限制多个主机
bash
ansible-playbook site.yml --limit "host1,host2"
1
- 仅在 host1 和 host2 上执行 Playbook。
限制主机组
bash
ansible-playbook site.yml --limit group_name
1
- 仅在 group_name 组中的主机上执行 Playbook。
使用通配符
bash
ansible-playbook site.yml --limit "*.example.com"
1
- 仅在 匹配该域名的所有主机 上执行 Playbook。
排除特定主机
如果你希望 排除某些主机,可以结合 --limit
和 !
:
bash
ansible-playbook site.yml --limit "!host3"
1
- 运行 Playbook,但 排除 host3。
结合 --inventory
使用
如果你有多个 inventory 文件,可以这样使用:
bash
ansible-playbook -i inventory.yml site.yml --limit "webservers"
1
- 仅在 webservers 组 中的主机上执行 Playbook。
你是希望在 Jitsi 服务器部署 时使用 --limit
来控制执行范围吗?如果是大规模部署,--limit
可以帮助你 逐步更新 服务器,而不会影响整个集群!你可以参考 Ansible 官方文档 了解更多细节。