目录
背景
prosody
jitsi-meet
下载
编译
olm-3.2.3.tgz问题
make
从docker里拿下编译好的文件
jvb
下载
编译
运行
jicofo
下载
编译
运行
nginx
参考文章
讨论论坛
prosody
其证书安装
download of jitsi
lib-jitsi-meet api
背景
在前面文章 jitsi学习路径_dualven_in_csdn的博客-CSDN博客_jitsi
docker-compose环境下,大致做成了实验:
A: 在xxyyoo.club域名的云环境下,web,android都可以正常连入环境并且使用;
B: 将域名相关的配置放到局域网内,网关将域名解析到服务主机,这种情景下,web互通,android互通,好像web与android之间的互通有点 问题,可以进 入聊天室,但是语音视频有问题,互相看不到。
故,需要进一步深入了解,就需要对每一个工程进行细致的了解,手动布署下。
prosody
- yum install prosody
- 增加配置文件 /etc/prosody/conf.d/10.60.100.194.cfg.lua
-
生成密钥
prosodyctl cert generate 10.60.100.194
prosodyctl cert generate auth.10.60.100.194
生成秘钥
prosodyctl register focus auth.10.60.100.194 gbcom.*****6
systemctl start/stop/* prosody
prosodyctl status/restart /start 都可以
jitsi-meet
下载
https://github.com/jitsi/jitsi-meet.git (fetch) 注意事项参考jvb章节
可以从这儿直接拿到代码 : Index of /jitsi-meet/src/
编译
注意node>=14 ,npm >=7
olm-3.2.3.tgz问题
npm install 中,会出现
npm install error ,because
https://gitlab.matrix.org/api/v4/projects/27/packages/npm/@matrix-org/olm/-/@matrix-org/olm-3.2.3.tgz can not download.
实在没有办法 去issue里搜索下,已经有人提问了
https://github.com/jitsi/jitsi-meet/issues/10371
取到了 ,放到自己的服务器上,修改package.json(1处),package-lock.json(3处!!如果不修改会发生 下面莫名其妙的问题)
莫名其妙问题:
PS D:\java\jitsi\jitsi-meet> npm install
npm WARN config global `--global`, `--local` are deprecated. Use `--location=global` instead.
npm ERR! code ENOENT
npm ERR! syscall open
npm ERR! path C:\Users\duanxiongwen\AppData\Local\npm-cache\_cacache\tmp\an0AwF/package.json
npm ERR! errno -4058
npm ERR! enoent ENOENT: no such file or directory, open 'C:\Users\duanxiongwen\AppData\Local\npm-cache\_cacache\tmp\an0AwF\package.json'
npm ERR! enoent This is related to npm not being able to find a file.
npm ERR! enoent
npm ERR! A complete log of this run can be found in:
npm ERR! C:\Users\duanxiongwen\AppData\Local\npm-cache\_logs\2022-07-06T05_49_41_953Z-debug-0.log
作好上面4处修复 后,npm install ,按报错信息,替换package-lock.json里的integrity校验信息,即可以install 成功。
npm WARN tarball tarball data for @matrix-org/olm@http://meshview.gwifi.com.cn:8891/topo/topodata/olm-3.2.3.tgz (sha512-OhC9wwZ/ox9vputA1MR2A7QlYlvfXCV+tdbADOR7Jn7o9qoXh3HWf+AbSpXTK3daF0GIHA69Ws8XOnWqu5n53A==) seems to be corrupted. Trying again.
npm ERR! code EINTEGRITY
npm ERR! sha512-OhC9wwZ/ox9vputA1MR2A7QlYlvfXCV+tdbADOR7Jn7o9qoXh3HWf+AbSpXTK3daF0GIHA69Ws8XOnWqu5n53A== integrity checksum failed when using sha512: wanted sha512-OhC9wwZ/ox9vputA1MR2A7QlYlvfXCV+tdbADOR7Jn7o9qoXh3HWf+AbSpXTK3daF0GIHA69Ws8XOnWqu5n53A== but got sha512-esXozm98Z7Lp+j8tBFvJXCjCMEh/R7+a3O3rW3RgtUtbGIL+hTxIdNlbMdrMLGUEyh/LTrDHJEw4PYFdVQ+3ZQ==. (543976 bytes)npm ERR! A complete log of this run can be found in:
make
然后make,这块只能移到 2.194linux环境进行编译/home/java/jitsi/jitsi-meet
把刚才在windows上install成功的都放上来,含有node_module.
make,主要看懂 Makefile这个文件。编译应该就这一个命令 webpack .这块编译失败了(todo)
其实我们需要的前端文件,可以根据最下面的这个任务看出,只需要从工程拿些源文件就可以了。但因为上面的编译如果不过,libs这个文件夹不产生前端的包,也就产生不了。
从docker里拿下编译好的文件
对照上面的source-package任务,我们可以知道哪些文件是我们需要的;
docker-compose exec web bash
cd /usr/share/jitsi-meet
所以我们可以把这个文件夹,直接拷出来,放到2.194:/docker/nginx/jitsi目录下
jvb
下载
GitHub - jitsi/jitsi-videobridge: Jitsi Videobridge is a WebRTC compatible video router or SFU that lets build highly scalable video conferencing infrastructure (i.e., up to hundreds of conferences per server).
网络运气良好情况下,直接git pull 就可以;运气不行的情况 下,使用GitHub Desktop 甚至再加上翻墙软件。
编译
要求 jdk 11 ;故,使用mvn 时,
windows下,拷贝 mvn.bat mvn11.bat, 增加一句”set JAVA_HOME=D:\installed\AdoptOpenJDK\jdk-11.0.10.9-hotspot“ 即可。(2.193 win环境)
linux 下, mvn11里增加JAVA_HOME=/home/java/jitsi/Deploy/jdk-11.0.15.1(2.194 linux环境)
mvn11 package -D maven.test.skip=true即可以进行编译。 (我一般在2.193 win环境上编译,因为在编译过程中,涉及到下载包,本机上有翻墙软件,2.194 linux上没有翻墙代理)。
运行
放到2.194下的/home/java/jitsi/Deploy,修改下jvb.sh 文件
运行结果:
jicofo
下载
https://github.com/jitsi/jicofo.git (fetch)
编译
类似jvb.
运行
/home/java/jitsi/Deploy, 也作类似jvb的修改
nginx
[root@localhost conf]# cat jitsi.conf
server {# listen 443;listen 0.0.0.0:443 ssl http2;listen [::]:443 ssl http2; server_name 10.60.100.194 alias another.alias;ssl_certificate /docker/nginx/jitsi/10.60.100.194.crt; ##prosody生成的秘钥位置ssl_certificate_key /docker/nginx/jitsi/10.60.100.194.key; ## prosody生成的秘钥位置ssl_session_cache shared:SSL:1m;ssl_session_timeout 5m;ssl_ciphers HIGH:!aNULL:!MD5;ssl_protocols TLSv1 TLSv1.1 TLSv1.2;ssl_prefer_server_ciphers on;location / {root /docker/nginx/jitsi/;index index.html index.htm;ssi on;}location /http-bind {proxy_pass http://localhost:5280/http-bind;proxy_set_header X-Forwarded-For $remote_addr;proxy_set_header Host $http_host;}# external_api.js must be accessible from the root of the# installation for the electron version of Jitsi Meet to work# https://github.com/jitsi/jitsi-meet-electronlocation /external_api.js {alias /docker/nginx/jitsi/libs/external_api.min.js;}}
docker run --name jitsi-nginx -p 443:443 -v /docker/nginx/conf/jitsi.conf:/etc/nginx/conf.d/default.conf:ro -v /docker/nginx/jitsi:/docker/nginx/jitsi -v /etc/localtime:/etc/localtime --restart always -d dualvenregistry:5000/nginx:latest
参考文章
unix : 手动安装Jitsi-Meet音视频_Runing_Jason的博客-CSDN博客_jitsi-meet
centos: 在全新centos 7 下安装Jitsi-meet_king05800的博客-CSDN博客
讨论论坛
lib-jitsi-meet/doc/example ,when I run it ,something wrong happens · Issue #2060 · jitsi/lib-jitsi-meet · GitHub 上面解决了lib-meet-jitsi引用不出图像的问题
https://community.jitsi.org/
prosody
Prosody - ArchWiki
Configuring Prosody – Prosody IM 有相关的配置说明
其证书安装
https://blog.csdn.net/fengyu09/article/details/50748963/
download of jitsi
https://download.jitsi.org/stable/ 下载地址
lib-jitsi-meet api
lib-jitsi-meet API (low level) | Jitsi Meet