Установка и настройка Mediacore CE

MediaCore CE - бесплатная, мультимедийная CMS, с широким функционалом, по сути являющаяся платформой для создания видео порталов. Распространяется с открытым исходным кодом. Написана на языке Python.
Сразу огворюсь, я и так довольно далек от программирования, но на python'е не напишу даже "Hello world!", речь в данном материале пойдет об установке и настройке серверного окружения, включая саму CMS.

Итак, на начальном этапе имеем в наличии чистый сервер с установленной системой Debian squeeze.

Установка mysql

Начнем пожалуй с настройки mysql сервера и всего что к нему прилагается. Тут все элементарно, в процессе установки указываем пароль рута.

apt-get install mysql-server--5.1  mysql-client libmysqlclient-dev

для проверки что все установилось и работает, зайдем в консольный клиент

root@server:~# mysql -root -ppassword
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 37
Server version: 5.1.63-0+squeeze1 (Debian)

Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

ок, mysql завелся и работает, пока оставляем его в покое, вернемся позже.

Установка пакетов python и настройка виртуальной среды

Теперь нужно установить пакеты python, необходимые для настройки виртуальной среды и корректной работы mediacore.
начнем с:

apt-get install python-dev python-doc

далее ставим пакеты необходимые движку для создания миниатюр, вообще данный процесс установки довольно сильно отличается от документации с официального сайта.

root@server:~# apt-get install libjpeg62 libjpeg62-dev zlib1g-dev libfreetype6 libfreetype6-dev
root@server:~# apt-get install libjpeg8-dev
root@server:~# apt-get install python-imaging

идем делее

root@server:~# apt-get install python-pastescript python-mysqldb git

Виртуальная среда используется для независимой друг от друга установки различных python приложений, при этом библиотеки одного приложения не будут перезаписаны библиотеками другого.
Проверяем, установлена-ли виртуальная среда:

root@server:~# python -c 'import virtualenv'

Если получили следующюю ошибку:

Traceback (most recent call last):
  File "", line 1, in 
ImportError: No module named virtualenv

значит виртуальная среда не установлена, для исправления воспользуемся инструментом easy_install

root@server:~# easy_install virtualenv

В процессе первой установки, у меня вылезли какие-то грабли, с помощью гугла и метода тыка, решил проблему установкой следующего модуля

root@server:~# easy_install mysql-python

Создаем виртуальную среду. Папку можете выбрать на свой вкус, я разместил ее в /home

root@server:~# virtualenv --no-site-packages /home/mediacore_env

активируем:

root@server:~# source /home/mediacore_env/bin/activate

Если все прошло успешно, после активации созданной виртуальной среды python, приглашение командной строки должно выглядеть примерно так:

(mediacore_env)root@server:~#

Все установленные после этого пакеты, будут доступны только когда активна эта виртуальная среда.

Установка и настройка Mediacore в режиме development

Cкачиваем исходники mediacore с официального сайта, либо архивом, либо из git репозитария.
Я воспользоваться git.

(mediacore_env)root@server:~# cd /home
(mediacore_env)root@debian:/home# git clone git://github.com/mediacore/mediacore-community.git
# смотрим что у нас в текущей папке
(mediacore_env)root@server:/home# ls -la
total 20
drwxr-xr-x  5 root root 4096 Jun 30 22:07 .
drwxr-xr-x 22 root root 4096 Jun 30 20:23 ..
drwxr-xr-x  9 root root 4096 Jun 30 22:08 mediacore-community # исходники mediacore
drwxr-xr-x  5 root root 4096 Jun 30 21:49 mediacore_env # виртуальная среда

папку можно и не переименовывать, это как вам удобней, я переименовал

(mediacore_env)root@server:/home# mv mediacore-community mediacore
(mediacore_env)root@server:/home# cd mediacore

теперь нужно установить движок, запустив setup.py

(mediacore_env)root@server:/home/mediacore# python setup.py develop

Вернемся к mysql, нам нужно создать базу данных и пользователя с соответствующими на нее правами
Для простоты, база, пользователь и его пароль, у нас будут mediacore.

(mediacore_env)root@server:/home/mediacore# mysql -u root -ppassword

создаем базу данных mediacore

mysql> create database mediacore default character set utf8 collate utf8_general_ci;
Query OK, 1 row affected (0.00 sec)

даем пользователю mediacore права на созданную базу данных, при этом, если на момент выполнения данной команды, такой пользователь не существовал, он будет создан автоматически, данные естественно можете указать свои, как минимум пароль)

mysql> grant all on mediacore.* to mediacore@localhost identified by 'mediacore';
Query OK, 0 rows affected (0.00 sec)

# на этом можно закончить с  mysql
mysql>\q

Настроим доступ движка к нашей базе данных.
Для этого открываем файл конфига mediacore, /home/mediacore/development.ini, находим секцию [app:main] и приводим нижеидущую строку к нужному виду, формат по умолчанию такой:

sqlalchemy.url = mysql://username:pass@localhost/dbname?charset=utf8&use_unicode=0

в нашем случае, после редактирования, она должна выглядеть так:

sqlalchemy.url = mysql://mediacore:mediacore@localhost/mediacore?charset=utf8&use_unicode=0

Теперь нужно заполнить базу данных.
Создаем начальную структуру базы:

(mediacore_env)root@server:/home/mediacore# paster setup-app development.ini
Running setup_config() from mediacore.websetup
22:43:14,339 INFO  [mediacore.websetup] [MainThread] Initializing new database with version 
22:43:14,528 INFO  [mediacore.websetup] [MainThread] Adding default data
22:43:14,657 INFO  [mediacore.websetup] [MainThread] Generating appearance.css from your current settings
22:43:14,674 INFO  [mediacore.websetup] [MainThread] Successfully setup

Что-бы на тестовом сайте работала функция полнотекстового поиска, нужно импортировать в базу файл setup_triggers.sql.

(mediacore_env)root@server:/home/mediacore# mysql -u root -ppassword mediacore < ./setup_triggers.sql

Проверка mediacore

Ваши настройки скорее всего будут отличаться, в силу структуры моей сети, тем не менее, суть от этого не измениться.
Редактируем файл конфига mediacore/home/mediacore/development.ini. Я выставил настройки таким образом:

host = 192.168.50.131

В моем случае, это адрес виртуальной машины, через локальный DNS сервер на него прицеплен домен mediacore.grt. Тоже самое можно сделать через файл hosts.

port = 80

Порт я поставил 80, заранее остановив сервер apache, поскольку если оставить 8080, у меня почему-то не получилось войти в админку, а нам главное проверить что все работает.

Запускаем:

(mediacore_env)root@server:/home/mediacore# paster serve --reload development.ini
Starting subprocess with file monitor
Starting server in PID 8959.
serving on http://192.168.50.131:80

Теперь идем в наш любимый браузер и набираем http://mediacore.grt ( напомню, это созданный мной, левый домен, работающий только в рамках моей машины ). Открылась главная страница портала Mediacore CE, вроде все работает.

Админка у нас расположена по адресу:
http://mediacore.grt/admin

имя по умолчанию: admin
пароль по умолчанию: admin

В Mediacore уже присутствует некоторый демо контент, но мы попробуем добавить свой
В верхней панели жмем кнопку Media, далее кнопку Add new media, заполняем форму на свое усмотрение, обязателно там только поле Title, заполняем его, жмем Save, далее, справа жмем кнопку Add & Manage, появится окно, в верхнее поле вставляем ссылку на ролик с YouTube и жмем Add URL, закрываем окно, справа в блоке Publish status, нажимаем кнопку Review Сomplete, и далее Publish Now, видео добавлено, правда миниатюру видео, в блоке Thumbnail, он мне показал только после нажатия F5.

Теперь можно перейти на сайт, нажав на стрелку слева в шапке и выбрав View Site.
Вот и наше видео.

Собственно на этом установка, настройка и пробный запуск видео портала на Mediacore CE, в Development режиме закончены.

Комментарии

Обращаюсь к создателю статьи ))) очень хорошая статья и понятная вроде бы все делаю по ней и главное все получается но концовка ))) не работает ))) если не сложно ув. Создатель статьи, напиши в аську 918262 а то уже неделю мучаю и не получается ))) буду очень признателен за помощ )) с меня Шеколадка )) ну в общем разберемся ))) в обиде не оставлю )))

А где можно посмотреть демо скрита?

http://demo.mediacore.tv/

Отправить комментарий

Содержание этого поля является приватным и не предназначено к показу.
Регистр имеет значение
                 .o.                         .ooo     .ooooo.                     
.888. .88' d88' `8.
oooo d8b .8"888. oooo ooo d88' Y88.. .8' oooo oooo ooo
`888""8P .8' `888. `88. .8' d888P"Ybo. `88888b. `88. `88. .8'
888 .88ooo8888. `88..8' Y88[ ]88 .8' ``88b `88..]88..8'
888 .8' `888. `888' `Y88 88P `8. .88P `888'`888'
d888b o88o o8888o `8' `88bod8' `boood8' `8' `8'


Введите код, изображенный в стиле ASCII-арт.