INSTALL_PL 4.56 KB
Instrukcja przeznaczona jest dla systemu operacyjnego Ubuntu.

Zainstaluj pipa:
>> sudo apt-get update
>> sudo apt-get -y install python-pip

Zainstaluj Django w wersji 1.4.8:
>> sudo pip install Django==1.4.8

Zainstaluj Django south:
>> sudo apt-get install python-django-south
lub:
>> sudo pip install South

Zainstaluj Django extensions w wersji 1.6.7:
>> sudo pip install django-extensions==1.6.7

Zainstaluj Django registration w wersji 0.8:
>> sudo pip install django-registration==0.8 

Zainstaluj pythonowy moduł lxml:
>> sudo apt-get install python-lxml

Zainstaluj Postgresa:
>> sudo apt-get update
>> sudo apt-get install postgresql postgresql-contrib
Zmień użytkownika na postgres:
>> sudo -i -u postgres
A następnie dodaj poszczególne role do postgresa komendą:
>> createuser --interactive
Stwórz pustą bazę danych dla Slowala:
>> createdb slowal -E UTF8 -T template0 -l pl_PL.utf8
Jeśli locale pl_PL.utf8 nie istnieje dodatkowo należy uruchomić komendy:
>> sudo locale-gen pl_PL.utf8
>> sudo service postgresql restart
Załaduj dump bazy danych poleceniem (zrzut bazy umieszczony jest w archiwum INSTALL_PACK.zip, jeśli archiwum nie dołączono do niniejszej paczki sprawdź na stronie http://zil.ipipan.waw.pl/Slowal):
>> psql slowal < obraz_bazy.db

Zainstaluj gita:
>> sudo apt-get install git

Sklonuj repozytorium gitowe z GitLaba:
>> git clone http://git.nlp.ipipan.waw.pl/walenty/Slowal.git

Stwórz folder "Walenty" w folderze "data":
>> cd data
>> mkdir Walenty

Dodaj w głównym folderze projektu plik konfiguracyjny settings.py (plik umieszczony jest w archiwum INSTALL_PACK.zip):
	Zmień w nim zmienną STATIC_ROOT, tak by wskazywała na położenie plików statycznych strony, np.:
		STATIC_ROOT = "/.../static/Slowal"

Dodaj w głównym folderze projektu plik konfiguracyjny database_data.py (plik umieszczony jest w archiwum INSTALL_PACK.zip) oraz zdefiniuj w nim połączenie z bazą danych, np.:
	DATABASES = {
	    'default': {
		'ENGINE': 'django.db.backends.postgresql_psycopg2',
		'NAME': 'db_name',                      
		'USER': 'user_name',                     
		'PASSWORD': '',                  
		'HOST': '',                     
		'PORT': '5432',                   
	    }
	}

Zainstaluj moduł psycopg2:
>> sudo apt-get install python-psycopg2

Zainstaluj Morfeusza2 zgodnie z instrukcjami na stronie http://sgjp.pl/morfeusz/dopobrania.html.

Zgraj pliki statyczne do dedykowanego katalogu poleceniem:
>> python manage.py collectstatic

Zainstaluj Apacha:
>> sudo apt-get install apache2

Zainstaluj mod-wsgi:
>> sudo apt-get install libapache2-mod-wsgi

Utwórz plik slowal.wsgi odpowiednio definiując w nim ścieżki do plików statycznych. Przykładowa treść pliku poniżej:
--------------------------------------------
import os, sys

sys.path.append('/home/zil/Slowal')
sys.path.append('/home/zil')
os.environ['DJANGO_SETTINGS_MODULE'] = 'Slowal.settings'

import django.core.handlers.wsgi

application = django.core.handlers.wsgi.WSGIHandler()
--------------------------------------------

Skonfiguruj apacha dodając plik konfiguracyjny (np. o nazwie slowal.conf) do folderu sites-available apacha (domyślnie /etc/apache2/sites-available/), ścieżka WSGIScriptAlias musi wskazywać na plik slowal.wsgi. Przykładowy plik konfiguracyjny poniżej:
--------------------------------------------
<VirtualHost *:80>
    ServerAdmin name@gmail.com
    ServerName slowal.nlp.ipipan.waw.pl

    ServerAlias walenty.ipipan.waw.pl

    DocumentRoot /.../Slowal/templates/
    <Directory />
      Options FollowSymLinks
      AllowOverride None
      Require all granted
    </Directory>
    WSGIScriptAlias / /.../scripts/slowal.wsgi
    WSGIDaemonProcess Slowal user=zil group=zil processes=2 threads=15
    WSGIProcessGroup Slowal
    Alias /static/ /.../static/Slowal/
    <Directory "/.../static/Slowal">
        Require all granted
    </Directory>

    ErrorLog /.../logs/Slowal/error.log
    CustomLog /.../logs/Slowal/access.log combined
</VirtualHost>
--------------------------------------------

Uruchom stronę poleceniem:
>> sudo a2ensite slowal.conf

Zrestartuj apacha:
>> sudo service apache2 restart

Opcjonalnie ustaw w crontabie cykliczne uruchamianie komend create_[...]_walenty i count_positions_occurrences,
Ważne, żeby skrypt create_text_walenty był uruchamiany z przynajmniej dziennym wyprzedzeniem przed create_TEI_walenty i create_tex_walenty:
1 0 * * 5 python /.../Slowal/manage.py create_text_walenty
1 0 * * 7 python /.../Slowal/manage.py create_tex_walenty
1 0 * * 7 python /.../Slowal/manage.py create_TEI_walenty
0 1 * * * python /.../Slowal/manage.py count_positions_occurrences