Sistema de Informações Gerenciais do Interlegis
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

202 lines
6.9 KiB

=================
Instalando o SIGI
=================
Este documento descreve como efetuar a instalação do Sistema de
Informações Gerenciais do Interlegis (SIGI). Os passos são baseados
nas distribuições GNU/Linux Debian e Ubuntu. Podem ser aplicados sem
dificuldades em outras distribuições, mas poderão sofrer alguma
adaptação.
Preparação do ambiente para a instalação
========================================
Há dois tipos de instalação do SIGI, uma para desenvolvimento e outra
para produção.
Para ambas instalações, certifique-se que os seguintes softwares
estejam instalados em seu sistema:
* Python >= 2.4 < 3.0
* Python Image Library (PIL)
* reportlab
* Django 1.1
* django-extensions <http://django-command-extensions.googlecode.com>
* django-googlecharts <http://github.com/jacobian/django-googlecharts>
* django-treemenus' <http://django-treemenus.googlecode.com>
* django-geraldo <http://github.com/marinho/geraldo>
O Python pode ser instalado a partir do pacote ``python`` com uma
ferramenta de instalação de pacotes como o ``apt-get`` ou
``aptitude``.
Se a sua distribuição não possui o pacote ``python-django``, para o
Django na versão 1.1, será necessário obter e configurar o mesmo
manualmente. A próxima seção traz mais detalhes para esta tarefa.
Instalação do Django
--------------------
O Django 1.1 pode ser obtido através da `página de download
<http://www.djangoproject.com/download/>`_ do `Django Project
<http://www.djangoproject.com>`_ via *tarball* (``tar.gz``).
Obtendo e instalando o Django
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Primeiramente baixe o `tarball do Django 1.1
<http://www.djangoproject.com/download/1.1/tarball/>`_ ou dê
*checkout* na tag 1.1 disponível no repositório do Subversion do
projeto::
svn checkout http://code.djangoproject.com/svn/django/tags/releases/1.1/
Após isso será necessário colocar o pacote Python do ``django``
(diretório ``django`` disponível dentro do diretório/tarball baixado)
no *path* do Python.
Para saber quais são os diretórios que estão no path do Python,
execute em linha de comando::
python -c 'import sys; print sys.path'
Você tem opção de mover o pacote ``django`` para algum diretório
coberto pelo path ou adicionar um outro local no path utilizando a
variável de ambiente ``PYTHONPATH`` do usuário que rodará o sistema. O
formato do ``PYTHONPATH`` é o mesmo do ``PATH`` do sistema. Exemplo::
PYTHONPATH=/path/to/django:$PYTHONPATH
De maneira simplificada, a instalação do Django é como a instalação de
qualquer outro pacote Python.
Preparando o ambiente para desenvolvimento
------------------------------------------
Se você irá desenvolver o SIGI, é necessário possuir os seguintes
pacotes instalados em sua máquina (para versões do Python anterior
à 2.5):
* sqlite3, para SQLite 3;
* python-pysqlite2, interface Python para SQLite 3.
Preparando o ambiente para produção
-----------------------------------
Para disponibilizar o SIGI em um ambiente para produção você
necessitará do MySQL Server ou PostgreSQL, ou qualquer outro Sistema
Gerenciador de Banco de Dados (SGBD) compatível com Django 1.0, e de
suas seguintes interfaces para Python, como os pacotes
``python-mysqldb`` e ``python-psycopg2`` (respectivamente para MySQL e
PostgreSQL).
Será necessário também possuir o Apache (>= 2.2) instalado para
disponibilizar o sistema via HTTP, de forma cliente/servidor, ou outro
servidor web compatível com Python e WSGI (ou FastCGI).
Opcionalmente, você pode utilizar o servidor web Lighttpd para servir
os arquivos estáticos do sistema.
Você encontrará configurações para Apache com WSGI neste documento,
juntamente com instruções para configurar o SIGI com o banco de dados
escolhido.
Instalação e configuração do SIGI
=================================
O SIGI está disponível no `Colab <http://colab.interlegis.gov.br>`_,
um portal colaborativo para a gerência dos projetos de software do
`Interlegis <http://www.interlegis.gov.br>`_.
A página do projeto SIGI no Colab pode ser acessada através do link
http://colab.interlegis.gov.br/wiki/ProjetoSigi.
Obtendo e instalando o SIGI
---------------------------
Para baixar o SIGI, é necessário ter o Subversion instalado em sua
máquina (pacote ``subversion``). Para *checkout* do sistema via
Subversion, execute o comando abaixo::
svn checkout http://repositorio.interlegis.gov.br/SIGI/trunk/ \
/path/to/SIGI
Substitua ``/path/to/SIGI`` para o local onde deseja instalar o
SIGI. (Iremos considerar o diretório SIGI como a raiz do projeto
durante o restante deste documento.)
Configuração do SIGI
--------------------
Dentro da raiz do projeto, encontra-se um diretório de nome ``sigi``
(pacote Python do projeto). Sua configuração padrão, se encontra no
arquivo ``settings.py``.
Para alterar as configurações do projeto, é recomendado que copie o
arquivo ``local_settings.template`` para ``local_settings.py`` e
altere os parâmetros neste arquivo.
Instalação em ambiente para desenvolvimento
-------------------------------------------
As configurações padrão do projeto já estão direcionadas para um
ambiente de desenvolvimento e não exige demais configurações.
(Os comandos abaixo deverão ser executados dentro do diretório
``sigi``, onde se encontra o arquivo ``manage.py``.)
Base de dados em ambiente para desenvolvimento
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Antes de executar o projeto, é necessário preencher o banco de dados
com suas tabelas e valores padrão.
Considerando que possua o SQLite instalado, basta executar o comando
abaixo::
python manage.py syncdb
Execução do projeto em ambiente para desenvolvimento
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Para rodar o SIGI, execute em linha de comando::
python manage.py runserver
O projeto poderá ser acessado através do endereço
http://127.0.0.1:8000/.
Instalação em ambiente para produção
------------------------------------
Para instalar o SIGI em ambiente para produção, devemos configurar um
Sistema Gerenciador de Banco de Dados (SGBD), o qual armazenará os
dados do sistema, e configurar um servidor HTTP, como o Apache, para
disponibilizar o sistema na web.
Configuração do SGDB
~~~~~~~~~~~~~~~~~~~~
Modifique em seu ``local_settings.py`` as variáveis
``DATABASE_ENGINE``, ``DATABASE_NAME``, ``DATABASE_USER``,
``DATABASE_PASSWORD``, ``DATABASE_HOST`` e ``DATABASE_PORT`` de acordo
com o banco de dados disponibilizado para o SIGI.
Em ``DATABASE_ENGINE``, suas opções são ``postgresql_psycopg2``,
``postgresql``, ``mysql``, ``sqlite3`` ou ``ado_mssql``.
Após isso, é necessário preencher o banco de dados
com suas tabelas e valores padrão. Para tal, execute em linha de
comando::
python manage.py syncdb
Configuração do servidor web Apache com WSGI
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Exemplos de configurações, de um ``VirtualHost``, estão disponíveis no
diretório ``etc/apache/`` dentro do diretório raiz do projeto
(``SIGI/``).