最近一直在学习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
- 运行 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
- 以上的每一个步骤,都是我亲测成功过的,所以有需要的童鞋可参考参考。
- 最近也是刚开始学习视频通话这块知识,所以有不对的地方,也欢迎童鞋指正留言。
|