centos7安装并使用licode四:下载licode并使用
参考链接:
官方文档
docker: Error response from daemon: driver failed programming external connectivity on endpoint peaceful_sammet (0ffcb446e5de6905d872c4e20080243fce8f9928d68b857f6b4a23eadc38f2f3): iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 8080 -j DNAT --to-destination 172.17.0.2:8080 ! -i docker0: iptables: No chain/target/match by that name.
终于进入正题了。官方文档给了两种方法安装licode。一种是使用docker安装,一种是在ubuntu系统使用命令安装。最开始我认为ubuntu和centos区别不大,所以使用第二种方法安装(当时的我不知道有docker安装的方式,但是我之前知道有docker这个东西。)。遇到的第一个问题是没有apt-get。我本来想用yum替代。但是细想apt-get和yum有点区别。所以还是安装apt-get。后面不停地百度,结果发现网上地教程没有一个可以成功的。无奈之下,用docker下载了ubuntu的镜像。在docker尝试安装licode。遇到了不少的问题。最终遇到了没有libavresample.so.2的问题。我真的是快疯了。我就直接运行最后的命令了。哈哈哈,终于可以在浏览器看到人了。但是还是不能多人视频。一不小心,弄出一个错误,实在解决不了了。接着重新安装,还是不行。后面发现licode的官方有关于使用docker安装licode的教程(这个时候发现官方文档提及了docker。)。我的内心是崩溃的。
目录:
- 下载安装运行licode
- 查看控制台日志
- 停止容器
1、现在安装运行licode
创建名为licode的容器。并运行licode。
MIN_PORT=30000;
MAX_PORT=30050;
sudo docker run --name licode \
-p 3000:3000 -p 3001:3001 -p 8080:8080 \
-p $MIN_PORT-$MAX_PORT:$MIN_PORT-$MAX_PORT/udp \
-e "MIN_PORT=$MIN_PORT" \
-e "MAX_PORT=$MAX_PORT" \
-e "PUBLIC_IP=your_host_id" lynckia/licode
-e 设置环境变量
-p 建立本地端口与容器端口之间的关系。
–name 容器名称。
MIN_PORT并MAX_PORT定义用于webrtc连接的udp端口范围。
MIN_PORT并MAX_PORT定义用于webrtc连接的udp端口范围。
PUBLIC_IP告诉Licode用于从外部访问服务器的IP。填你的服务器的外网ip或者域名。我在这里填的服务器的域名。
出错了。原来是8080被占用了。
删除容器,继续进行。
docker ps -a #查看容器
docker rm -f licode #删除容器
pkill docker #终止进程
iptables -t nat -F #清空nat表的所有链
ifconfig docker0 down #停止docker默认网桥
sudo systemctl start docker #启动docker
再进行之前的步骤。
MIN_PORT=30000;
MAX_PORT=30050;
sudo docker run --name licode \
-p 3000:3000 -p 3001:3001 -p 8080:8080 \
-p $MIN_PORT-$MAX_PORT:$MIN_PORT-$MAX_PORT/udp \
-e "MIN_PORT=$MIN_PORT" \
-e "MAX_PORT=$MAX_PORT" \
-e "PUBLIC_IP=your_host_id" lynckia/licode
终于跑起了。
新开一个连接,输入
curl localhost:3001
2、查看控制台日志
sudo docker logs -f licode
3、停止容器
sudo docker stop licode
由于自己买了域名,域名。分配了以子域名。所以可以在手机上访问。效果图如下。我使用的是火狐浏览器。多人显示问题还是没有解决。等我有空再接弄吧。