BigBlueButton 安装笔记|Installing from source

阅读更多

前言:

  • bigbluebutton是一个万维网广播站和会议系统,他是基于Flash的视频会议,后台服务器使用Red5 Server。
  • 本篇是参考installing from source英文版,根据自己的情况有点改动,系统是基于ubuntu之上。
  • 如果想在ubuntu上快安装bigbluebutton请参见英文文档:http://code.google.com/p /bigbluebutton/wiki/InstallationUbuntu。
  • 如果不想安装bigbluebutton,只想测试bigbulebutton可以参见:http://code.google.com/p /bigbluebutton/wiki/BigBlueButtonVM。
  • 关于更多bigbluebutton的查看:http://code.google.com/p/bigbluebutton

笔记开始:

1.检查网络

2.更新与升级
sudo apt-get update
sudo apt-get upgrade

3.安装JAVA 6
sudo apt-get install openjdk-6-jre-headless
安装了下列软件包:
ca-certificates-java icedtea-6-jre-cacao java-common libaccess-bridge-java openjdk-6-jre-headless openjdk-6-jre-lib rhino tzdata-java

4.安装MySQL
sudo apt-get install mysql-server
安装了下列软件包:
libdbd-mysql-perl libdbi-perl libhtml-template-perl libnet-daemon-perl libplrpc-perl mysql-client-5.0 mysql-server mysql-server-5.0 mysql-server-core-5.0

5.安装Tomcat
sudo apt-get install tomcat6
安装了下列软件包:
gcj-4.3-base jsvc libcommons-collections-java libcommons-daemon-java libcommons-dbcp-java libcommons-pool-java libecj-java libecj-java-gcj libgcj-bc libgcj-common libgcj9-0 libgcj9-jar libservlet2.5-java libtomcat6-java tomcat6 tomcat6-common
测试一下:
http://:8080

6.安装swftools
sudo apt-get install swftools
安装了下列软件包:
libt1-5 swftools

7.安装Imagemagick
sudo apt-get install imagemagick
安装了下列软件包:
imagemagick imagemagick-doc

8.安装Nginx
sudo apt-get install nginx
安装了下列软件包:
nginx

9.安装ActiveMQ
cd /opt
sudo wget http://apache.mirror.rafal.ca/activemq/apache-activemq/5.2.0/apache-activemq-5.2.0-bin.tar.gz
sudo tar zxvf apache-activemq-5.2.0-bin.tar.gz
sudo mv apache-activemq-5.2.0-bin.tar.gz /usr/local/activemq
启动ActiveMQ
sudo /usr/local/activemq/bin/activemq

10.修改tomcat6帐户
############################
tomcat6:x:106:113::/usr/share/tomcat6:/bin/bash

11.安装red5
cd /opt
sudo wget http://build.xuggle.com/job/red5_jdk6_stable/131/artifact/workingcopy/red5-0.8.RC3-build-hudson-red5_jdk6_stable-131.tar.gz
sudo tar zxvf red5-0.8.RC3-build-hudson-red5_jdk6_stable-131.tar.gz
sudo mv red5-0.8.RC3-build-hudson-red5_jdk6_stable-131 /usr/local/red5-0.8
用户tomcat用户启动red5
sudo su -l tomcat6
./red5.sh(需要root权限)

注:英文照考文档中是以上两行,而我在实际中使用tomcat用户启动red5 server是有很多[Error]提示。使用root启动就没那些Error,即使用sudo ./red5.sh命令启动。

12.安装oflaDemo
在浏览器的URL输入网址:http://:5080/installer/
选择”oflaDemo”,再点击”Install”
安装后在浏览器URL输入网址:http://5080/demos/ofla_demo.html
编辑”rtmp://localhost/oflaDemo”并点击”[connect]”
在左边的[library]选择一个,即可以在[Video]中看到视频。

13.安装编译(Asterisk)环境:
sudo apt-get install build-essential linux-headers-2.6.28-15-generic libssl-dev ncurses-dev libnewt-dev zlib1g-dev bison
额外安装了下列软件包:
dpkg-dev g++ g++-4.3 libncurses5-dev libpng12-dev libslang2-dev libstdc++6-4.3-dev m4 patch

14.安装Dahdi(原zaptel)
cd /usr/local/src
sudo wget http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-2.2.0.2+2.2.0.tar.gz
sudo tar zxvf dahdi-linux-complete-2.2.0.2+2.2.0.tar.gz
cd dahdi-linux-complete-2.2.0.2+2.2.0
sudo make all(需要root权限)
sudo make install
make config

注:如果服务器没有安装板卡,不需要安装Dahdi,他只是digium板卡的驱动

15.安装.Asterisk
cd /usr/local/src
sudo wget http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-1.4.25.tar.gz
sudo tar zxvf asterisk-1.4.25.tar.gz
cd asterisk-1.4.25
sudo ./configure
sudo make all
sudo make install
sudo make config

16.配置Asterisk
添加一个extensions
sudo vi /etc/asterisk/extensions.conf

; BigBlueButton: Setup sample conference
[bigbluebutton]
;
; Create an extension, 600, for evaluating echo latency.
;
exten => 600,1,Answer                   ; Do the echo test
exten => 600,n,Playback(demo-echotest)  ; Let them know what’s going on
exten => 600,n,Echo                     ; Do the echo test
exten => 600,n,Playback(demo-echodone)  ; Let them know it’s over
exten => 600,n,Hangup()
创建SIP帐号
sudo vi /etc/asterisk/sip.conf

; BigBlueButton: Setup sample user to connect over VoIP
[user1]
type=friend
username=user1
insecure=very
secret=secret
qualify=yes
nat=yes
host=dynamic
canreinvite=no
context=bigbluebutton
allow=all

[user2]
type=friend
username=user2
insecure=very
secret=secret
qualify=yes
nat=yes
host=dynamic
canreinvite=no
context=bigbluebutton
allow=all

[user3]
type=friend
username=user3
insecure=very
secret=secret
qualify=yes
nat=yes
host=dynamic
canreinvite=no
context=bigbluebutton
allow=all

[user4]
type=friend
username=user4
insecure=very
secret=secret
qualify=yes
nat=yes
host=dynamic
canreinvite=no
context=bigbluebutton
allow=all
创建AMI帐号
sudo vi /etc/asterisk/manager.conf

[general]
enabled = yes
port = 5038
bindaddr = 0.0.0.0

; BigBlueButton: Enable Red5 to connect
[bbb]
secret = secret
permit = 0.0.0.0/0.0.0.0
read = system,call,log,verbose,command,agent,user
write = system,call,log,verbose,command,agent,user
17.配置nginx
sudo vi /etc/nginx/sites-available/bigbluebutton
修改server_name参数为自己的IP
server {
listen   80;

server_name  demo
#server_name  192.168.2.125;

access_log  /var/log/nginx/bigbluebutton.access.log;

location ~ (/open/|/close/|/idle/|/send/) {
proxy_pass         http://127.0.0.1:8088;
proxy_redirect     off;
proxy_set_header   X-Forwarded-For   $proxy_add_x_forwarded_for;

client_max_body_size       10m;
client_body_buffer_size    128k;

proxy_connect_timeout      90;
proxy_send_timeout         90;
proxy_read_timeout         90;

proxy_buffering            off;
}
location /deskshare {
proxy_pass         http://127.0.0.1:5080;
proxy_redirect     default;
proxy_set_header   X-Forwarded-For   $proxy_add_x_forwarded_for;
client_max_body_size       10m;
client_body_buffer_size    128k;
proxy_connect_timeout      90;
proxy_send_timeout         90;
proxy_read_timeout         90;
proxy_buffer_size          4k;
proxy_buffers              4 32k;
proxy_busy_buffers_size    64k;
proxy_temp_file_write_size 64k;
include    fastcgi_params;
}
location /bigbluebutton {
proxy_pass         http://127.0.0.1:8080;
proxy_redirect     default;
proxy_set_header   X-Forwarded-For   $proxy_add_x_forwarded_for;

client_max_body_size       10m;
client_body_buffer_size    128k;

proxy_connect_timeout      90;
proxy_send_timeout         90;
proxy_read_timeout         90;

proxy_buffer_size          4k;
proxy_buffers              4 32k;
proxy_busy_buffers_size    64k;
proxy_temp_file_write_size 64k;

include    fastcgi_params;
}

location / {
root   /var/www/bigbluebutton-default;
index  index.html index.htm;
}

location /client {
root    /var/www/bigbluebutton;
index  index.html index.htm;
}

#error_page  404  /404.html;

# redirect server error pages to the static page /50x.html
#
error_page   500 502 503 504  /50x.html;
location = /50x.html {
root   /var/www/nginx-default;
}
}

sudo ln -s /etc/nginx/sites-available/bigbluebutton /etc/nginx/sites-enabled/bigbluebutton

18.下载bigbluebutton
sudo mkdir -p /home/user/temp
cd /home/user/temp
sudo wget http://www.bigbluebutton.org/hudson/job/BBB-Trunk-Apps/ws/dist/bigbluebutton-apps-0.5.tar.gz
sudo wget http://www.bigbluebutton.org/hudson/job/BBB-Trunk-Apps-Deskshare/ws/dist/webapps/deskshare.tar.gz
sudo wget http://www.bigbluebutton.org/hudson/job/BBB-Trunk-Client/ws/client.tar.gz
sudo wget http://www.bigbluebutton.org/hudson/job/BBB-Trunk-Web/ws/bigbluebutton-0.1.war
sudo wget http://www.bigbluebutton.org/hudson/job/BBB-Trunk-Config/ws/web//*zip*/web.zip

19.禁用Tomcat6的Security设置
sudo vi /etc/default/tomcat6
把”#TOMCAT6_SECURITY=yes”换成”TOMCAT6_SECURITY=no”

20.安装数据库
mysql -u root
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 35
Server version: 5.0.75-0ubuntu10.2 (Ubuntu)

Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the buffer.

mysql> create database bigbluebutton_dev;
Query OK, 1 row affected (0.08 sec)

mysql> grant all on bigbluebutton_dev.* to ‘bbb’@'localhost’ identified by ’secret’;
Query OK, 0 rows affected (0.05 sec)

mysql> commit;
Query OK, 0 rows affected (0.00 sec)

21.安装BigBlueButton web
cd /var/lib/tomcat6/webapps
sudo cp /home/user/temp/bigbluebutton-0.1.war ./bigbluebutton.war

22.确认DF2SWF,CONVERT和GS(GhostScript)应用
which pdf2swf
which convert
which gs

23.编辑bbb-web属性(properties)
sudo vi /var/lib/tomcat6/webapps/bigbluebutton/WEB-INF/classes/bigbluebutton.properties
修改下列几个:
-swfToolsDir参数(pdf2swf目录位置)”swfToolsDir=/usr/bin”
-imageMagickDir参数(convet目录位置)”imageMagickDir=/usr/bin”
-ghostScriptExec参数(指向gs应用位置)”ghostScriptExec=/usr/bin/gs”
-bigbluebutton.web.serverURL参数替换成自己的IP地 址”bigbluebutton.web.serverURL=http://192.168.2.125″
重启tomcat6

24.生成数据库
在浏览器的URL输入:http://:8080/bigbluebutton就会自动生成bigbluebutton_dev数据库的所有表
测试一下:
> mysql -u root
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 56
Server version: 5.0.75-0ubuntu10.2 (Ubuntu)

Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the buffer.

mysql> use bigbluebutton_dev;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> show tables;
+—————————–+
| Tables_in_bigbluebutton_dev |
+—————————–+
| account                     |
| account_conference          |
| account_user                |
| conference                  |
| permission                  |
| role                        |
| role_permission_rel         |
| scheduled_session           |
| user                        |
| user_permission_rel         |
| user_role_rel               |
| voice_conference_bridge     |
+—————————–+
12 rows in set (0.00 sec)

mysql>

25.创建Presentation上传目录
sudo mkdir /var/bigblue
sudo chown tomcat6:adm-R /var/bigbluebutton
sudo chmod 777 -R /var/bigbluebutton

26.安装bbb-apps
cd /usr/local/red5-0.8/webapps
sudo cp /home/user/temp/bigbluebutton-apps-0.5.tar.gz ./
sudo tar zxvf bigbluebutton-apps-0.5.tar.gz
sudo mv webapps/bigbluebutton/ ./
sudo rm -fr bigbluebutton-apps-0.5.tar.gz webapps/

27.编辑BigBlueButton Apps properties
sudo vi /usr/local/red5-0.8/webapps/bigbluebutton/WEB-INF/bigbluebutton.properties
#
# Location for recordings
recordingsDirectory=/var/bigbluebutton

# These properties are for Asterisk Management Interface (AMI)
ami.host=127.0.0.1
ami.port=5038
ami.username=bbb
ami.password=secret

28.反注释/usr/local/red5-0.8/conf/red5-core.xml中的RTMPT部分

29.安装xuggler
sudo cd /usr/local
sudo wget http://com.xuggle.s3.amazonaws.com/xuggler/xuggler-3.1.FINAL/xuggle-xuggler.3.1.818-i686-pc-linux-gnu.sh
sudo chmod a+x xuggle-xuggler.3.1.818-i686-pc-linux-gnu.sh
sudo ./xuggle-xuggler.3.1.818-i686-pc-linux-gnu.sh

30.设置xuggler环境变量
sudo vi /etc/profile
export XUGGLE_HOME=/usr/local/xuggler
export LD_LIBRARY_PATH=$XUGGLE_HOME/lib:$LD_LIBRARY_PATH
export PATH=$XUGGLE_HOME/bin:$PATH

31.安装Desk共享Apps
cd /usr/local/red5-0.8/webapps
sudo cp /home/user/temp/deskshare.tar.gz ./
sudo tar zxvf deskshare.tar.gz
sudo rm -fr deskshare.tar.gz

32.安装BigBlueButton客户端
cd /var/www
sudo mkdir bigbluebutton
cd bigbluebutton
sudo cp /home/user/temp/client.tar.gz ./
sudo tar zxvf client.tar.gz
sudo rm -fr client.tar.gz

33.修改BBB客户端配置
sudo vi /var/www/bigbluebutton/client/conf/config.xml
-改变uri成你的IP address
-改变host=”conf/join-mock.xml”为host=”http:///bigbluebutton/conference-session/enter”

34.安装bbb默认主页
cd /var/www
sudo cp /home/user/temp/web.zip ./
sudo unzip -dc web.zip
sudo mv c/web ./bigbluebutton-default
sudo rm -rf c

安装结束,重启ActiveMQ、Red5 Server、Tomcat、Asterisk服务

测试:

在浏览器的url输入http;//就能开始使用bigbluebutton

参考:

http://code.google.com/p/bigbluebutton/wiki/InstallingBigBlueButton

你可能感兴趣的:(BigBlueButton 安装笔记|Installing from source)