OpenMeetings: различия между версиями

Материал из ALT Linux Wiki
м (добавлен скрипт сборки ffmpeg)
м (bug in systemd)
 
(не показано 5 промежуточных версий этого же участника)
Строка 1: Строка 1:
{{stub}}
OpenMeetings - это свободное web-приложение, которое позволяет устраивать встречи и презентации в сети.
OpenMeetings - это свободное web-приложение, которое позволяет устраивать встречи и презентации в сети.


Строка 18: Строка 17:


Запустим MySQL:
Запустим MySQL:
  # service mysqlв start
  # service mysqld start


Проверим, слушает ли MySQL порт 3306
Проверим, слушает ли MySQL порт 3306
Строка 39: Строка 38:


==== Сборка и установка ffmpeg ====
==== Сборка и установка ffmpeg ====
В автоматическом режиме с помощью скрипта ffmpeg-0.1-alt1.sh (можете сохранить листинг ниже в файл запуска и выполнить его от рута):
Реализовано в автоматическом режиме с помощью скрипта [http://git.altlinux.org/people/ekorneechev/packages/?p=red5.git;a=blob_plain;f=ffmpeg-alt0_1.sh;hb=HEAD ffmpeg-alt0_1.sh] (нужно сохранить листинг по ссылке в файл запуска и выполнить его от рута).
<source lang="bash">
#!/bin/sh
 
# FFmpeg compilation for Alt Linux p8
apt-get update
apt-get install -y cmake libfreetype-devel gcc5 gcc5-c++ git libtool_2.4 automake_1.14 make mercurial nasm pkgconfig zlib-devel yasm \
libpng-devel libharfbuzz-devel libpcre-devel bzlib-devel #fixed ERROR: freetype2 not found
 
# Create a temporary directory for sources.
SOURCES=$(mkdir ~/ffmpeg_sources)
cd ~/ffmpeg_sources
 
# Download the necessary sources.
curl -#LO ftp://ftp.videolan.org/pub/x264/snapshots/last_stable_x264.tar.bz2
hg clone https://bitbucket.org/multicoreware/x265
git clone --depth 1 git://git.code.sf.net/p/opencore-amr/fdk-aac
curl -L -O http://downloads.sourceforge.net/project/lame/lame/3.99/lame-3.99.5.tar.gz
curl -O http://downloads.xiph.org/releases/opus/opus-1.1.3.tar.gz
curl -O http://downloads.xiph.org/releases/ogg/libogg-1.3.2.tar.gz
curl -O http://downloads.xiph.org/releases/vorbis/libvorbis-1.3.5.tar.gz
wget http://downloads.xiph.org/releases/theora/libtheora-1.1.1.tar.gz
git clone --depth 1 https://chromium.googlesource.com/webm/libvpx.git
git clone --depth 1 git://source.ffmpeg.org/ffmpeg
 
# Unpack files
for file in `ls ~/ffmpeg_sources/*.tar.*`; do
tar -xvf $file
done
 
cd x264-*/
./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" --enable-static && make && make install && make distclean; cd ..
 
cd x265/build/linux
cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX="$HOME/ffmpeg_build" -DENABLE_SHARED:bool=off ../../source && make && make install; cd ~/ffmpeg_sources
 
cd fdk-aac
autoreconf -fiv && ./configure --prefix="$HOME/ffmpeg_build" --disable-shared && make && make install && make distclean; cd ..
 
cd lame-*/
./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" --disable-shared --enable-nasm && make && make install && make distclean; cd ..
 
cd opus-*/
autoreconf -fiv && ./configure --prefix="$HOME/ffmpeg_build" --disable-shared && make && make install && make distclean; cd ..
 
cd libogg-*/
./configure --prefix="$HOME/ffmpeg_build" --disable-shared && make && make install && make distclean; cd ..
 
cd libvorbis-*/
LDFLAGS="-L$HOME/ffmeg_build/lib" CPPFLAGS="-I$HOME/ffmpeg_build/include" ./configure --prefix="$HOME/ffmpeg_build" --with-ogg="$HOME/ffmpeg_build" \
--disable-shared && make && make install && make distclean; cd ..
 
cd libtheora-*/
./configure --prefix="$HOME/ffmpeg_build" --with-ogg="$HOME/ffmpeg_build" --disable-examples --disable-shared --disable-sdltest --disable-vorbistest && make && make install; cd ..
 
cd libvpx
./configure --prefix="$HOME/ffmpeg_build" --disable-examples && make && make install && make clean; cd ..
 
cd ffmpeg
PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure --prefix="$HOME/ffmpeg_build"  --extra-cflags="-I$HOME/ffmpeg_build/include" \
--extra-ldflags="-L$HOME/ffmpeg_build/lib" --bindir="$HOME/bin" --pkg-config-flags="--static" --enable-gpl --enable-nonfree --enable-libfdk_aac \
--enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 \
--enable-libtheora && make && make install && make distclean && hash -r; cd ..
 
cd ~/bin
cp ffmpeg ffprobe ffserver lame x264 /usr/local/bin
 
cd ~/ffmpeg_build/bin
cp x265 /usr/local/bin
 
echo "FFmpeg Compilation is Finished!"
</source>


==== Устанавливаем OpenMeetings ====
==== Устанавливаем OpenMeetings ====
Строка 117: Строка 45:


Например,
Например,
  mkdir /opt/red5321
  # mkdir /opt/red5321
  cd /opt/red5321
  # cd /opt/red5321
  wget http://apache-mirror.rbc.ru/pub/apache/openmeetings/3.2.1/bin/apache-openmeetings-3.2.1.zip
  # wget http://apache-mirror.rbc.ru/pub/apache/openmeetings/3.2.1/bin/apache-openmeetings-3.2.1.zip
  unzip apache-openmeetings-3.2.1.zip
  # unzip apache-openmeetings-3.2.1.zip
  rm -f apache-openmeetings-3.2.1.zip
  # rm -f apache-openmeetings-3.2.1.zip
 


Настраиваем OpenMeetings на работу с MySQL.
* Для начала скачиваем и разворачиваем "Java connector for mysql"
# wget http://repo1.maven.org/maven2/mysql/mysql-connector-java/5.1.39/mysql-connector-java-5.1.39.jar
# mv mysql-connector-java-5.1.39.jar /opt/red5321/webapps/openmeetings/WEB-INF/lib


* Редактируем конфигурационный файл для MySQL: {{path|/opt/red5321/webapps/openmeetings/WEB-INF/classes/META-INF/mysql_persistence.xml}}
Modify in line 72:
    -- Url=jdbc:mysql://localhost:3306/openmeetings?
    ++ Url=jdbc:mysql://localhost:3306/имя_БД?
Modify in line 77:
    -- Username=root
    ++ Username=имя_пользователя
    ...is the user that we did initially for the database.
Modify in line 78:
    -- Password=" />
    ++ Password=пароль" />
* Обновляем права на него:
# chmod 640 /opt/red5321/webapps/openmeetings/WEB-INF/classes/META-INF/mysql_persistence.xml


Теперь можно запустить сервер OpenMeetings для первоначальной настройки.


==== Реализация сервиса OpenMeetings (red5) ====
Для запуска, остановки и переостановки сервера проще использовать команду service start/stop/restart, для этого необходимо реализовать init-скрипт
(за основу брался имевшийся на wiki скрипт - [[Файл:Red5.init]]). Доступен здесь - [http://git.altlinux.org/people/ekorneechev/packages/?p=red5.git;a=blob_plain;f=red5.init;hb=HEAD red5.init], необходимо сохранить в файле {{path|/etc/init.d/red5}}. Выполните следующее:
# mcedit /etc/init.d/red5 #или любым другим редактором внести изменения из файла по ссылке
# chmod +x /etc/init.d/red5
# chkconfig --add red5
# chkconfig red5 on #добавляем в автостарт
# service red5 start


 
{{note|На Systemd почему-то зависает запуск, хотя все и запускается. Статус - activating... TODO - починить}}
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Настраиваем OpenMeetings на работу с MySQL.
 
$ cd /opt/red5/webapps/openmeetings/conf
$ sudo cp mysql_hibernate.cfg.xml hibernate.cfg.xml
 
Нужно отредактировать hibernate.cfg.xml, указать там имя и пароль:
<!-- User / Password -->
<property name="connection.username">openmeetings</property>
<property name="connection.password">пароль</property>
Имя базы в свойстве "connection.url" не трогаем, потому что там и так стоит нужное - openmeetings.
 
Запустим OpenMeetings:
$ cd /opt/red5
$ sudo ./red5.sh


==== Настраиваем OpenMeetings ====
==== Настраиваем OpenMeetings ====


Финальная настройка осуществляется через браузер по адресу:
Финальная настройка осуществляется через браузер по адресу (после нее не забудьте перезапустить сервис red5):
 
http://адрес_сервера:5080/openmeetings/install


==== Помещаем OpenMeetings в автозагрузку ====
http://адрес_сервера:5080/openmeetings/install (страница будет доступна спустя 30 секунд после запуска сервиса).


Добавляем в файл [http://www.altlinux.org/Rc.local /etc/rc.d/rc.local] строки:
Пути до инструментов для OpenMeetings (64-х разрядная ОС):
cd /opt/red5
./red5.sh &> /dev/null &


==== TODO ====
[[Файл:OM_paths_tools.png|800x410px]]
* /var/lib/mysql/my.cnf затрется при обновлении (?), возможно, настройки лучше помещать в какой-то другой файл
* сделать автозагрузку через демон
* добавить в статью настройку всяких плюшек типа OpenOffice-Service, SWFTools и пр.
* сделать нормальный пакет


[[Категория:HOWTO]][[Категория:Enterprise Software]]
[[Категория:HOWTO]][[Категория:Enterprise Software]]

Текущая версия от 14:48, 27 марта 2017

OpenMeetings - это свободное web-приложение, которое позволяет устраивать встречи и презентации в сети.

Официальная страница проекта: https://openmeetings.apache.org/

Установка и настройка OpenMeetings под Альт Сервер 8.0

Все инструкции доступны здесь

Пример будет с использованием в качестве базы данных MySQL (mariadb-server)

Настройка MySQL

# apt-get install mariadb-server
# chkconfig mysqld on

В конфиге /etc/my.cnf.d/server.cnf нужно указать, что слушаем локальный порт. Закомментируем строку skip-networking:

#skip-networking

Запустим MySQL:

# service mysqld start

Проверим, слушает ли MySQL порт 3306

# netstat -an | grep 3306

Должны увидеть строку, заканчивающуюся на LISTEN.

Создаем пользователя и базу в MySQL

# mysql -u root -p
mysql> CREATE DATABASE название_базы DEFAULT CHARACTER SET 'utf8';
mysql> GRANT ALL PRIVILEGES ON open321.* TO 'имя_пользователя'@'localhost' IDENTIFIED BY 'пароль' WITH GRANT OPTION;
mysql> QUIT;

Устанавливаем необходимые зависимости

# apt-get update
# apt-get install java-1.8.0-openjdk libreoffice gcc5 ghostscript swftools \
  unzip libfreetype libfreetype-devel ncurses ncurses-devel zlib zlib-devel \
  bzip2 file-roller git automake_1.9 pkg-config nmap zziplib \
  ImageMagick libgif-devel sox flash-player-ppapi

Сборка и установка ffmpeg

Реализовано в автоматическом режиме с помощью скрипта ffmpeg-alt0_1.sh (нужно сохранить листинг по ссылке в файл запуска и выполнить его от рута).

Устанавливаем OpenMeetings

Качаем последнюю версию проекта, распаковываем его в /opt.

Например,

# mkdir /opt/red5321
# cd /opt/red5321
# wget http://apache-mirror.rbc.ru/pub/apache/openmeetings/3.2.1/bin/apache-openmeetings-3.2.1.zip
# unzip apache-openmeetings-3.2.1.zip
# rm -f apache-openmeetings-3.2.1.zip

Настраиваем OpenMeetings на работу с MySQL.

  • Для начала скачиваем и разворачиваем "Java connector for mysql"
# wget http://repo1.maven.org/maven2/mysql/mysql-connector-java/5.1.39/mysql-connector-java-5.1.39.jar
# mv mysql-connector-java-5.1.39.jar /opt/red5321/webapps/openmeetings/WEB-INF/lib
  • Редактируем конфигурационный файл для MySQL: /opt/red5321/webapps/openmeetings/WEB-INF/classes/META-INF/mysql_persistence.xml
Modify in line 72: 
   -- Url=jdbc:mysql://localhost:3306/openmeetings?
   ++ Url=jdbc:mysql://localhost:3306/имя_БД?
Modify in line 77:
   -- Username=root
   ++ Username=имя_пользователя
   ...is the user that we did initially for the database.
Modify in line 78:
   -- Password=" />
   ++ Password=пароль" />
  • Обновляем права на него:
# chmod 640 /opt/red5321/webapps/openmeetings/WEB-INF/classes/META-INF/mysql_persistence.xml

Теперь можно запустить сервер OpenMeetings для первоначальной настройки.

Реализация сервиса OpenMeetings (red5)

Для запуска, остановки и переостановки сервера проще использовать команду service start/stop/restart, для этого необходимо реализовать init-скрипт (за основу брался имевшийся на wiki скрипт - Файл:Red5.init). Доступен здесь - red5.init, необходимо сохранить в файле /etc/init.d/red5. Выполните следующее:

# mcedit /etc/init.d/red5 #или любым другим редактором внести изменения из файла по ссылке
# chmod +x /etc/init.d/red5
# chkconfig --add red5
# chkconfig red5 on #добавляем в автостарт
# service red5 start
Примечание: На Systemd почему-то зависает запуск, хотя все и запускается. Статус - activating... TODO - починить


Настраиваем OpenMeetings

Финальная настройка осуществляется через браузер по адресу (после нее не забудьте перезапустить сервис red5):

http://адрес_сервера:5080/openmeetings/install (страница будет доступна спустя 30 секунд после запуска сервиса).

Пути до инструментов для OpenMeetings (64-х разрядная ОС):

OM paths tools.png