Skip to content

Docker部署服务端,web端,在线教育

elesos edited this page Oct 12, 2019 · 35 revisions

安装docker

centos7下安装: curl -sSL https://get.docker.com/ | sh

启动docker

systemctl enable docker.service && systemctl start docker.service

关闭防火墙

systemctl stop firewalld && systemctl disable firewalld

安装docker-enter

wget -P ~ https://raw.githubusercontent.com/elesos/assets/master/.bashrc_docker;

echo "[ -f ~/.bashrc_docker ] && . ~/.bashrc_docker" >> ~/.bashrc; source ~/.bashrc

运行starrtc容器

docker pull starrtc/starrtc

运行前请确保相关端口没有被占用

docker run -d --privileged=true -it -p 80:80 -p 443:443 -p 1935:1935 -p 10086-10088:10086-10088 -p 19903-19941:19903-19941 -p 29991-29995:29991-29995 -p 19931:19931/udp -p 10086:10086/udp -p 10088:10088/udp -p 19935:19935/udp -p 19928:19928/udp -p 19941:19941/udp -p 44446:44446/udp --name starrtc starrtc/starrtc /bin/bash

其中1935用于rtmp服务

检查docker是否运行

docker ps -a

进入容器

docker-enter starrtc

启动mysql,php7,nginx

cd /root/

./start.sh

启动服务端程序

cd /opt/nginx/html/starrtc-server/web-supported/

启动之前先修改starrtc.conf里面的aecurl,将里面的ip修改为你自已的ip

./start.sh

服务端程序所在目录:/opt/nginx/html/starrtc-server (从 https://gitee.com/starRTC/starrtc-server.git 下载的,如果要更新运行git pull即可)

域名形式访问,以starrtc.com域名为例

web示例 https://www.starrtc.com/demo/web 源码所在目录:/opt/nginx/html/demo/web(从 https://gitee.com/starRTC/starrtc-web.git 下载的,如果要更新运行git pull即可),一般只需要修改index.js文件就可以

im示例:https://www.starrtc.com/demo/im 源码所在目录:/opt/nginx/html/demo/im (从 https://gitee.com/starRTC/starrtc-webim.git 下载的,如果要更新运行git pull即可),一般只需要修改index.html就可以

在线教育示例:https://www.starrtc.com/demo/edu 源码所在目录:/opt/nginx/html/starrtc-edu (从 https://gitee.com/starRTC/starrtc-edu.git 下载的),编译后会生成build目录,然后将build目录改名(mv build edu)为edu并移动到到/opt/nginx/html/demo/目录下(mv edu /opt/nginx/html/demo)。

aec地址:http://www.starrtc.com/aec/eventCenter.php 暂不支持https地址。源码所在目录/opt/nginx/html/aec,如果需要更新线上源码,可以从/opt/nginx/html/starrtc-server/server-api/server-api-php里面拷贝更新后最新的文件。注意log.txt和uploads目录需要自已创建并给写权限。

数据库管理:http://starrtc.com/phpmyadmin/index.php 用户名root,密码password

以下接口需要https访问,源码所在目录:/opt/nginx/html/aec,如果需要更新线上源码,可以从/opt/nginx/html/starrtc-server/server-api/server-api-php里面拷贝更新后最新的文件。


IP形式访问,请将下面ip替换成你自已的ip地址

web示例 https://123.103.93.74/demo/web

im示例 https://123.103.93.74/demo/im

在线教育示例:https://123.103.93.74/demo/edu

aec地址:http://123.103.93.74/aec/eventCenter.php 暂不支持https地址

数据库管理:http://123.103.93.74/phpmyadmin/index.php

以下接口需要https访问

问题

  • 如何替换服务端证书

cd /opt/nginx/html/starrtc-server/web-supported/

假设你的证书为test.key和test.pem,将web-supported目录里面的所有key和pem都替换成你的key和pem,但文件名保持不变, 即:

rm -f starchatroom.key starmsg.key starsrc.key starvdn.key starvoip.key

cp test.key starchatroom.key && cp test.key starmsg.key && cp test.key starsrc.key && cp test.key starvdn.key && cp test.key starvoip.key

rm -f starchatroom.pem starmsg.pem starsrc.pem starvdn.pem starvoip.pem

cp test.pem starchatroom.pem && cp test.pem starmsg.pem && cp test.pem starsrc.pem && cp test.pem starvdn.pem && cp test.pem starvoip.pem

  • 如何替换域名证书

替换掉 /opt/nginx/conf/vhosts/ 目录下的starrtc.key和starrtc.pem即可

  • 如何更改为自已的域名

vim /opt/nginx/conf/nginx.conf 将starrtc.com替换成你自已的域名

vim /opt/nginx/conf/vhosts/starrtc.conf 将starrtc.com替换成你自已的域名

然后重启nginx:

/opt/nginx/sbin/nginx -s reload

  • 其它方式下载镜像(未更新)

百度网盘:链接:https://pan.baidu.com/s/1snj1y1NIyh3U1naN4XM8KA 提取码:e67z

腾讯微云:链接:https://share.weiyun.com/50e94QO 密码:4sfal8

tar -jxf starrtc.tar.tar.bz2

cat starrtc.tar | docker import - starrtc/starrtc:v1.0

docker run -d --privileged=true -it -p 80:80 -p 443:443 -p 1935:1935 -p 10086-10088:10086-10088 -p 19903-19941:19903-19941 -p 29991-29995:29991-29995 -p 19931:19931/udp -p 10086:10086/udp -p 10088:10088/udp -p 19935:19935/udp -p 19928:19928/udp -p 19941:19941/udp -p 44446:44446/udp --name starrtc starrtc/starrtc:v1.0 /bin/bash

  • 其它

修改mysql密码(可选), mysql -u root -p

默认密码为:password

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('这里换成你的密码');

FLUSH PRIVILEGES;

quit;

修改后需要修改config.php文件里面mysql的密码