''Статья описывает, как установить OpenPLM сервер в дистрибутиве [http://ru.wikipedia.org/wiki/CentOS CentOS]''
'''Примечание переводчика''': Дистрибутив CentOS доступен в виде дисков с бинарными пакетами только для платных подписчиков, следовательно я не могу попробовать действия статьи.
Требования к установке
* Apache Server version: Apache/2.2.3
* PostgreSQL 8.1.22
* Python 2.6.5
* Django 1.1.4
'''Примечание 1''': Django framework может запускаться и на SQLite 3 и MySQL и с другими веб-серверами. Разработчики приветствуют все нововведения и идеи, пожелания и комментарии оставляйте на сайте разработчиков. Также, Вы можете посетить сайт Django для дополнительной информации: [http://www.djangoproject.com/ Django website]'''Примечание 2''': Эта инструкция призвана к удачной установке, но возможно не до конца оптимизирована. Все предложения приветствуются.== 4.2.2.Установка соединений с необходимыми репозиторями ==
1. '''''rpm -Uvh !http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm'''''
1. '''''rpm -Uvh !http://download1.rpmfusion.org/free/el/updates/testing/5/i386/rpmfusion-free-release-5-0.1.noarch.rpm'''''
1. '''''rpm -Uvh !http://download1.rpmfusion.org/nonfree/el/updates/testing/5/i386/rpmfusion-nonfree-release-5-0.1.noarch.rpm'''''
1. '''''wget !http://www.graphviz.org/graphviz-rhel.repo'''''
1. '''''cp /path/to/graphviz-rhel.repo /etc/yum.repo.d/'''''
'''римечание'':''' Если первые 3 команды не сработали, Вы можете скачать и переместить repo файл самостоятельно, через wget и cp как в последних двух командах.''== 4.2.3. Инсталляция необходимых пактов ==
1. '''''yum groupinstall ‘Development Tools’'''''
1. '''''yum install centos-ds-base-devel gcc swig perl-!ExtUtils-!PkgConfig'''''
1. '''''yum install httpd mod_wsgi'''''
1. '''''yum install python26 python26-tools python26-devel python26-imaging'''''
1. '''''yum install postgresql-server libpqxx libpqxx-devel'''''
1. '''''yum install pyPdf python-pip'''''
1. '''''yum install graphviz graphviz-devel'''''
== 4.2.4. Инсталляция !SetupTools из исходников ==
1. '''''wget !http://pypi.python.org/packages/2.6/s/setuptools/setuptools-0.6c11-py2.6.egg#md5=bfa92100bd772d5a213eedd356d64086'''''
1. '''''sh setuptools-0.6c11-py2.6.egg –install-dir=/usr/lib/python2.6/site-packages/'''''
== 4.2.5. Установка gadFly/kjbuckkets из исходников ==
1. '''''wget !http://sourceforge.net/projects/gadfly/files/gadfly/gadflyZip/gadflyZip.zip'''''
1. '''''cd /patch/to/gadflyZip.zip'''''
1. '''''unzip gadflyZip.zip'''''
1. '''''cd /patch/to/gadflyZip/'''''
1. '''''python2.6 setup.py install'''''
1. '''''cd kjbuckets'''''
1. '''''python2.6 setup.py install'''''
== 4.2.6. Установка некоторых дополнений к Py ==
1. '''''easy_install-2.6 setuptools'''''
1. '''''easy_install-2.6 odfpy'''''
1. '''''easy_install-2.6 hashlib'''''
1. '''''easy_install-2.6 psycopg2'''''
1. '''''easy_install-2.6 pyPdf'''''
== 4.2.7. Установка pygraphviz из исходников ==
1. '''''wget !http://pypi.python.org/packages/source/p/pygraphviz/pygraphviz-1.1rc1.tar.gz#md5=7e709a8bf8d5103b461a5f54a399ef0d'''''
1. '''''cd /patch/to/pygraphviz/'''''
1. '''''tar -xzvf pygraphviz-1.1rc1.tar'''''
1. '''''cd pygraphviz-1.1rc1'''''
1. '''''python26 setup.py install'''''
== 4.2.8. Установка Django из исходников ==
1. '''''wget !http://www.djangoproject.com/download/1.1.4/tarball/'''''
1. '''''cd /path/to/Django-1.1.4'''''
1. '''''tar -xzvf Django-1.1.4.tar.gz'''''
1. '''''cd Django-1.1.4'''''
1. '''''python2.6 setup.py install'''''
== 4.2.9. Проверим, чтобы все было в порядке ==
Для Apache веб-сервера:
{{{
root@openplm-demo:~# service httpd status
Httpd is running (pid 5315).
}}}
Для Python :
{{{
root@openplm-demo:~# python2.6
Python 2.6.5 (r265:79063, Feb 28 2011, 21:55:56)
[GCC 4.1.2 20080704 (Red Hat 4.1.2-50)] on linux2
Type "help", "copyright", "credits" or
"license" for more information.
>>>
}}}
'''Примечание''': ''нажмите `Ctrl-D` для выхода из редактора Python''
Для Django :
{{{
root@openplm-demo:~# python2.6 /usr/bin/django-admin.py --version
1.1.4
}}}
== 4.2.10. Взять исходники OpenPLM, используя Subversion ==
1. '''''yum install subversion'''''
1. '''''mkdir /var/django'''''
''Все файлы при получении, будут записаны сюда:'' 1. '''''cd /var/django'''''
1. '''''svn co !svn://openplm.org/openPLM'''''
''Папка ./openPLM создана, и исходники в ней'' 1. '''''cd /var/django/openPLM'''''
1. '''''svn info'''''
{{{
Path: .
URL: svn://openplm.org/openPLM
Repository Root: svn://openplm.org/openPLM
Repository UUID: 5b46f505-65de-4892-aab2-a53e26d394e5
Revision: 195
Node Kind: directory
Schedule: normal
Last Changed Author: pjoulaud
Last Changed Rev: 195
Last Changed Date: 2010-08-25 11:29:03 +0200 (mer., 25 août 2010)
}}}
== 4.2.11. Настройка PostgreSQL ==
== ''Старт PostgreSQL :'' ==
* '''''service postgresql start'''''
== ''Проверка на запуск PostgreSQL:'' ==
* '''''ps aux|grep postgres'''''
{{{
postgres 25961 0.0 0.9 50544 4968 ? S Aug26 0:14 /usr/lib/postgresql/8.4/bin/postgres -D /var/postgres
postgres 25963 0.0 1.0 50664 5600 ? Ss Aug26 1:07 postgres: writer process
postgres 25964 0.0 0.2 50544 1336 ? Ss Aug26 1:00 postgres: wal writer process
postgres 25965 0.0 0.2 50808 1480 ? Ss Aug26 0:28 postgres: autovacuum launcher process
postgres 25966 0.0 0.2 14664 1224 ? Ss Aug26 0:24 postgres: stats collector process
root 27338 0.0 0.1 3324 804 pts/3 R+ 16:53 0:00 grep --color=auto postgres
}}}
'''Примечание: '''''Если PostgreSQL уже установлен, переходите к след. пунктам.''Установка пароля для ‘postgres’ пользователей[[BR]](в примере пароль будет ‘!MyPassword’ , но Вы можете поменять его на любой другой приемлемый)
* '''passwd postgres'''
* '''mkdir /var/postgres'''
Все файлы, необходимые для запуска PostgreSQL будут записаны в эту папку
* '''chown !postgres:postgres /var/postgres/'''
* '''find / -name initdb'''
{{{
/usr/bin/initdb
}}}
* '''su postgres'''
* '''/usr/bin/initdb –encoding=UTF-8 –locale=fr_FR.UTF-8 –pgdata=/var/postgres/'''
* '''/usr/bin/postgres -D /var/postgres &'''
== 4.2.12. Изменение postgresql аутентификации и политики с последующим перезапуском ==
* '''vi /var/lib/pgsql/data/pg_hba.conf'''
{{{
local all postgres ident sameuser
local all all md5
host all all 127.0.0.1/32 md5
}}}
* '''psql'''
{{{
postgres=#create database openplm;
postgres=#create role django with password 'MyPassword' login;
\q
}}}
* '''exit'''
* service postgresql restart''''''
== 4.2.13. Последняя инсталляция ==
* '''cd /var/django/openPLM/trunk/openPLM/'''
Проверка на все модули:
* python2.6 check_modules.py''''''
All is ok
* '''./manage.py syncdb'''
'''Примечание: '''''Вы создали суперпользователя для Django, и в этом примере имя ‘!MyAdmin’, но Вы можете поменять на любое другое приемлемое.'''''Внимание''': Отредактируйте файл'''''‘/var/django/openPLM/trunk/openPLM/settings.py’''''' и установите правильный пароль__''(‘!MyPassword’)''__ для поля __'''DATABASE_PASSWORD'''__Создадим папку, в которую будет помещен пакет OpenPLM:
* '''mkdir /var/openPLM'''
Установи нужные права на папку:
* '''chown !www-data:www-data /var/openPLM'''
Изменим права для папки под превью и навигационные схемы:
* '''chown !www-data:www-data /var/django/openPLM/trunk/openPLM/media/thumbnails'''
* '''chown !www-data:www-data /var/django/openPLM/trunk/openPLM/media/navigate'''[[BR]]
Активируйте navigate.py правильно :
* :command:[http://wiki.openplm.org/docs/ht_2_install_server_centos.html#id1 `]cp plmapp/navigate.py.centos plmapp/navigate.py
Настройка Apache server :
* '''vi /etc/httpd.d/conf/httpd.conf''' :
{{{
WSGIScriptAlias / /var/django/openPLM/trunk/openPLM/apache/django.wsgi
Alias /media /var/django/openPLM/trunk/openPLM/media
Order deny,allow
Allow from all
Order deny,allow
Allow from all
}}}
Перезапуск Apache server :
* '''service httpd restart'''
''Примечание автора: У меня была проблема с WSGI, и мне пришлось создать /var/www/.python-eggs каталог и установить правильные права.''== 4.2.14. Первые шаги в openPLM ==
Откройте броузер и введите
{{{
http://your_site_adress/admin/
}}}
Здесь your_site_adress дается как пример, Вы должны использовать свой адрес сайтаВведите пароль и имя администратораВы можете добавлять и редактировать пользователей тут '''''Home>Auth>User '''''
И не забудьте исправить в '''''Home>Plmapp>User''''' профили для нужных прав под программы в работе с openPLM:'''Примечание''': Ссылка для большей информации о [http://docs.djangoproject.com/en/dev/intro/tutorial02/ Django Admin tool].Можно совершать вход в систему:{{{
http://localhost/
}}}