最近一直在学习openvidu相关知识,在此记录下如何搭建openvidu server 以及 如何重新编译 openvidu-server-kms docker image.
Openvidu 官网: https://openvidu.io/
搭建 Openvidu Server
- 安装 docker & docker compose
- sudo apt-get install apt-transport-https
ca-certificates curl gnupg-agent software-properties-common - sudo add-apt-repository
“deb [arch=amd64] https://download.docker.com/linux/ubuntu
$(lsb_release -cs) stable” - sudo apt-get install docker-ce docker-ce-cli containerd.io
- sudo curl -L “https://github.com/docker/compose/releases/download/1.28.0/docker-compose-(uname -s)-$(uname -m)” -o /usr/local/bin/docker-compose
- sudo apt-get install apt-transport-https
- 运行 docker-server-kms ( net选用host, 省着做端口映射)
-
sudo docker run --rm --net=host -e DOMAIN_OR_PUBLIC_IP=192.168.11.7 -e OPENVIDU_SECRET=MY_SECRET openvidu/openvidu-server-kms:2.20.0
-
出现如下界面,即代表成功。打开浏览器,运行: https:// 192.168.11.7:4443 即可。
-
- 以上简单记录下搭建openvidu server 步骤,具体详细得可参考网上博主得文章。这里主要介绍下如何重新编译 docker-server-kms image.
重新编译 openvidu server docker image
-
git clone https://github.com/OpenVidu/openvidu.git
-
cd openvidu
-
mvn -DskipTests=true compile && mvn -DskipTests=true install # 只有第一次编译需要
-
cd openvidu-server
-
mvn clean package -Dmaven.test.skip=true # 每次修改openvidu server 内容都需要重新编译
-
编译成功后,会再taget 文件夹下生成 openvidu-server-2.20.0.jar
-
cd docker/openvidu-server-kms
-
运行 sudo sh ./create_image.sh 2.20.0 9. 如果顺利得话,会生成生成 docker image. 如下
-
显然我不是很顺利,但我运行 create_image ,出现网络连接不上问题。
- 一开始我以为是网络问题,后来选择科学上网,也没好使,问题依旧。
- 经过一番折腾和上网搜索,解决办法如下:
- 修改 dockerfile 文件, 增加如下内容
- RUN sed -i s:/archive.ubuntu.com:/mirrors.tuna.tsinghua.edu.cn/ubuntu:g /etc/apt/sources.list
RUN cat /etc/apt/sources.list
RUN apt-get clean
RUN apt-get -y update --fix-missing -
FROM ubuntu:18.04 MAINTAINER info@openvidu.io # =============================== RUN sed -i s:/archive.ubuntu.com:/mirrors.tuna.tsinghua.edu.cn/ubuntu:g /etc/apt/sources.list RUN cat /etc/apt/sources.list RUN apt-get clean RUN apt-get -y update --fix-missing # =============================== # Update and install dependencies RUN apt-get update && apt-get -y upgrade && \ apt-get install -y gnupg2 && \ rm -rf /var/lib/apt/lists/* # Install Kurento Media Server (KMS) RUN echo "deb [arch=amd64] http://ubuntu.openvidu.io/6.16.0 bionic kms6" | tee /etc/apt/sources.list.d/kurento.list && \ apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 5AFA7A83 && \ apt-get update && \ apt-get -y install kurento-media-server && \ rm -rf /var/lib/apt/lists/* # Install Java, supervisor and netstat RUN apt-get update && apt-get install -y \ openjdk-11-jre \ supervisor && \ rm -rf /var/lib/apt/lists/* # Configure supervisor RUN mkdir -p /var/log/supervisor COPY supervisord.conf /etc/supervisor/conf.d/supervisord.conf # Copy OpenVidu Server COPY openvidu-server.jar openvidu-server.jar # Copy KMS entrypoint COPY kms.sh /kms.sh # Cleanup RUN rm -rf /var/lib/apt/lists/* && \ apt-get autoremove --purge -y && apt-get autoclean EXPOSE 8888 EXPOSE 9091 EXPOSE 4443 # Exec supervisord CMD ["/usr/bin/supervisord"]
-
重新运行 sudo sh ./create_image.sh 2.20.0 ,即可运行成功。这样就重新编译成功 openvidu-server-kms docker image. 那么当官方提供的docker image 无法满足需求,可以考虑重新编译docker image.
-
测试: sudo docker run --rm --net=host -e DOMAIN_OR_PUBLIC_IP=192.168.11.7 -e OPENVIDU_SECRET=MY_SECRET openvidu/openvidu-server-kms:2.20.0
加个123, 测试下效果。
END
- 以上的每一个步骤,都是我亲测成功过的,所以有需要的童鞋可参考参考。
- 最近也是刚开始学习视频通话这块知识,所以有不对的地方,也欢迎童鞋指正留言。