Участник:Andrey Kruglov/Развёртывание рабочего окружения OpenCorpora на базе CentOs: различия между версиями

Материал из OpenCorpora
Перейти к навигации Перейти к поиску
м (Статья опубликована в общем пространстве статей)
 
(не показано 9 промежуточных версий этого же участника)
Строка 1: Строка 1:
Данная инструкция описывает подготовку рабочего окружения OpenCorpora на базе CentOs.
#REDIRECT [[Развёртывание рабочего окружения OpenCorpora на базе CentOs]]
 
== I Подготовительные операции. Установка ОС ==
 
1. Создать виртуалку. Поставить ОС
 
Достаточно 512 Mb RAM, 20 Gb HDD.
 
Ставил с образа [http://isoredirect.centos.org/centos/6/isos/ CentOS-6.6-i386-minimal.iso]
 
2. Поднять сетку
Отредактировать файл /etc/sysconfig/network-script/ifcfg-eth0:
<pre>
cd /etc/sysconfig/network-script
vi ifcfg-eth0
</pre>
 
В моём конкретном случае (виртуалка подключена непосредственно в сеть, режим bridge в VmWare) это было:
<pre>
IPADDR=192.168.1.51
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=192.168.1.1
</pre>
Рестартовать службу:
<pre>
service network restart
</pre>
 
Попробовать пингануть ya.ru, проверить что узел доступен.
 
3. Обновиться
<pre>
yum update
</pre>
 
4. Доставить пакеты по вкусу
<pre>
yum install mc
</pre>
 
5. Отрубить SELinux
 
Если по-простому - то прописать в /etc/selinux/config следующее:
<pre>
SELINUX=disabled
</pre>
 
6. Отключить файерволл
 
Дать в консоли команды:
<pre>
service iptables stop
chkconfig iptables off
</pre>
 
7. Настройка подключения по SSH
 
Закинуть свой ключ в /root/.ssh/authorized_keys, после reboot'а попробовать подключиться по SSH
 
== II Ставим вебсервер (apache+php+mysql) ==
1. Ставим апач
<pre>
yum install httpd
chkconfig httpd on
</pre>
 
В /etc/httpd/conf/httpd.conf добавить
<pre>
ServerName localhost
</pre>
 
Стартуем службу:
<pre>
service httpd start
</pre>
 
Закинуть файл /var/www/html/index.html и проверить, что открывается http://192.168.1.51
 
Версия апача - 2.2:
 
<pre>
httpd -v
Server version: Apache/2.2.15 (Unix)
Server built:  Oct 16 2014 14:45:47
</pre>
 
2. Ставим php с нужными нам модулями:
<pre>
yum install php php-pear php-mbstring
service httpd restart
</pre>
 
Закинуть простенький helloworld.php в  /var/www/html/helloworld.php и проверить что открывается http://192.168.1.51/helloworld.php
 
<pre>
<?php
echo 'php works!';
?>
</pre>
 
Версия PHP не особо критична (нет специфических требований), в основных репозитория сейчас 5.3 идёт по умолчанию:
<pre>
php -v
PHP 5.3.3 (cli) (built: Oct 30 2014 19:56:14)
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies
</pre>
 
3. Установка mysql
<pre>
yum install mysql-server php-mysql
chkconfig mysqld on
service mysqld start
mysql_secure_installation
</pre>
 
Создаём новое подключение в sqlyog и проверяем коннект к базе.
 
== III Настраиваем проект ==
1. качаем исходники
 
yum install subversion
 
cd /var/www/html
 
svn co https://github.com/OpenCorpora/opencorpora/trunk .
 
2. Подымаем пустую базу
 
mysql -u root -p
 
CREATE DATABASE corpora DEFAULT CHARSET utf8;
 
GRANT DELETE, INSERT, LOCK TABLES, SELECT, UPDATE ON corpora.* TO username IDENTIFIED BY 'password';
 
mysql -uroot -Dcorpora -p < /var/www/html/install/install.sql
 
3. Подкачиваем Smarty, symphony и что-то там ещё (через composer)
 
cd /var/www/html
 
curl -sS https://getcomposer.org/installer | php
 
php composer.phar install
<pre>
Installing dependencies (including require-dev) from lock file
  - Installing symfony/yaml (v2.0.24)
    Downloading: 100%
 
  - Installing symfony/console (v2.0.24)
    Downloading: 100%
 
  - Installing symfony/config (v2.0.24)
    Downloading: 100%
 
  - Installing symfony/class-loader (v2.0.24)
    Downloading: 100%
 
  - Installing robmorgan/phinx (v0.3.7)
    Downloading: 100%
 
  - Installing smarty/smarty (v3.1.19)
    Checking out /tags/v3.1.19/@4867
 
  - Installing swiftmailer/swiftmailer (v5.2.1)
    Downloading: 100%
 
Generating autoload files
</pre>
 
проверить что создалась папка /var/www/html/vendor/
 
Добавляем ссылку на Smarty (файл Smarty.class.php находится в /var/www/html/vendor/smarty/smarty/distribution/libs) в файл /etc/php.ini
 
include_path = ".:/php/includes:/var/www/html/vendor/smarty/smarty/distribution/libs"
 
Создаем каталоги под Smarty:
 
<pre>
mkdir /var/www/templates/
mkdir /var/www/smarty_dir/
mkdir /var/www/smarty_dir/templates_c/
mkdir /var/www/smarty_dir/configs/
mkdir /var/www/smarty_dir/cache/
chown -R apache /var/www/templates/
chown -R apache /var/www/smarty_dir/
</pre>
 
 
3. Создаём конфиг
 
cp /var/www/html/config.default.ini /var/www/html/config.ini
 
правим настройки подключения к базе (логин/пароль)
 
4. Правим ещё в php.ini
<pre>
date.timezone ="Europe/Moscow"
</pre>

Текущая версия от 20:53, 11 декабря 2014