Instalação Plone 2.5.

5 com módulos customizados
Ricardo Brito do Nascimento
http://brito.blog.incolume.com.br/2011/10/instalacao-plone-255-com-modulos.html 18 de outubro de 2011 Resumo O Plone é o CMS com menos falhas de segurança, software livre, gratuito e totalmente customizável; que pode atender diversas necessidades com portais e sítios web.

Introdução
O Plone também conhecido por PZP – Python/Zope/Plone, assim chamado pela formação do ambiente, que envolve a linguagem de programação interpretada Python, o framework para desenvolvimento web Zope e o CMS – Content Management System – Plone. O Plone está entre os CMS com menor índice de falhas de segurança, possui várias funcionalidades técnicas que podem ser comparadas com outros CMS na url http://cmsmatrix.org/matrix/cmsmatrix/plone. Trata-se de uma plataforma para gerenciamento de diversos tipos de conteúdo sem que sejam necessários conhecimentos técnicos em relação a estrutura codificada estrutura a plataforma. Pode-se construir um site completo, com diversas funcionalidades, sem a necessidade da construção de códigos complexos em linguagem de programação. O Plone abre espaço para customização de sua aparência e estrutura de navegação, além de possibilitar personalização do site através da escolha de cores, imagens e posicionamentos de diversos componentes. Em um nível mais avançado, a utilização do Plone dá conta da implementação de novas funcionalidades por parte de desenvolvedores de software, que podem ser agregadas a estrutura já existente, como AD/LDAP, Samba, e outros recurso.

O que é o Plone?
O Plone, classificado como um Sistema Gerenciador de Conteúdo ou popularmente chamado pelo acrônimo em Inglês CMS – Content Management System, é um software livre e de código aberto. Possui incorporado um sistema de workflow, diretivas de segurança e funções pré-configuradas, metadados para tipos conteúdo e suporte para múltiplos idiomas. Além disto desenvolvedores e testadores de todo o mundo contribuem com a sua construção e melhoria.

O que pode ser feito com o Plone?
• Criar o site facilmente; • Gerenciar todo o conteúdo do site através de uma interface amigável;

• • • • • •

Delegar sub-tarefas em áreas especificas do sítio sem comprometer a escalabilidade e a seguraça; Criar e organizar conteúdo de forma colaborativa através de um fluxo de trabalho; Personalização básica do aspecto visual do site através de interface intuitiva; Divulgar notícias, eventos e links; Publicar fotos, arquivos e vídeos; Organizar hierarquicamente seu conteúdo através de menus de navegação;

Quais recursos são oferecidos pelo Plone?
• • • • • • • • • • • • • • • Criação e manutenção de conteúdo; Todo gerenciamento de conteúdo realizado através do navegador Web; Gerenciamento de usuários com níveis hierárquicos; Fluxo de publicação colaborativa de conteúdo (workflow); Geração automática de infra-estrutura de navegação; Mecanismo de busca avançada; Possibilidade de criação de portais de Internet ou Intranet; Criação de blog corporativo; Ferramentas colaborativas para groupware; Repositório de conteúdos como imagens, documentos e vídeos; Agendamento e divulgação de eventos; Galeria de imagens; Área integrada de notícias; Segurança e integridade dos dados; Suporte a internacionalização;

escopo
O escopo de customização está limitado ao seguinte Ambiente: Sistema Operacional Linux
http://distrowatch.com/

Plone-2.5.5-UnifiedInstaller
https://launchpad.net/plone/2.5/2.5.5/+download/Plone-2.5.5-UnifiedInstaller.tgz

Five-1.4.4
http://codespeak.net/z3/five/release/Five-1.4.4.tgz

Imaging-1.1.7(PIL)
http://effbot.org/downloads/Imaging-1.1.7.tar.gz

reportlab-2.4
http://www.reportlab.com/ftp/reportlab-2.4.tar.gz

• O sistema Operacional poderá ser qualquer um Linux, não será abordado instalação em outro sistema operacional neste artigo; • O Plone 2.5.5 é a ultima revisão estável da versão 2, e possui os seguintes pacotes incorporados e respectivas versões:
Plone-2.5.5-UnifiedInstaller/packages/elementtree-1.2.620050316.tar.gz Plone-2.5.5-UnifiedInstaller/packages/HelperScripts.tgz Plone-2.5.5-UnifiedInstaller/packages/Imaging-1.1.6.tar.bz2 Plone-2.5.5-UnifiedInstaller/packages/jpeg-6b.tar.bz2

Plone-2.5.5-UnifiedInstaller/packages/libxml2-2.6.30.tar.bz2 Plone-2.5.5-UnifiedInstaller/packages/libxml2-python-2.6.21.tar.bz2 Plone-2.5.5-UnifiedInstaller/packages/libxslt-1.1.22.tar.bz2 Plone-2.5.5-UnifiedInstaller/packages/Plone-2.5.5.tar.bz2 Plone-2.5.5-UnifiedInstaller/packages/Python-2.4.4.tar.bz2 Plone-2.5.5-UnifiedInstaller/packages/python-openid-2.0.1.tar.bz2 Plone-2.5.5-UnifiedInstaller/packages/PyXML-0.8.4.tar.bz2 Plone-2.5.5-UnifiedInstaller/packages/reportlab_2_0.tar.bz2 Plone-2.5.5-UnifiedInstaller/packages/setuptools-0.6c7-py2.4.tgz Plone-2.5.5-UnifiedInstaller/packages/TextIndexNG-3.1.16.tar.bz2 Plone-2.5.5-UnifiedInstaller/packages/zlib-1.2.3.tar.bz2 Plone-2.5.5-UnifiedInstaller/packages/Zope-2.9.8-final.tar.bz2

• o Five é um produto Zope 2 que atualmente permite integrar tecnologias Zope 3 no Zope 2. Entre outros, ele permite: a utilização da interfaces Zope 3; a configuração baseada ZCML, dos adaptadores, das páginas do browser (incluindo skins, camadas e recursos); automatizar a adição e edição de formulários baseados em esquemas, eventos de objeto; utilizar o estilo i18n para Zope 3 de mensagem catalogadas. • Imaging ou Python Imaging Library (PIL) adiciona capacidades de processamento de imagem para o interpretador Python. Esta biblioteca suporta muitos formatos de arquivo, e fornece um poderoso processamento de imagem e recursos gráficos. • Reportlab é uma biblioteca de software que permite criar documentos diretamente no formato Portable Document Format (PDF), utilizando a linguagem de programação Python. Ele também cria tabelas e gráficos de dados em bitmap e vários formatos vetoriais, além do PDF. O PDF é o padrão mundial para documentos eletrônicos, que suporta alta qualidade de impressão ainda é totalmente portável para todas as plataformas.

Instalação
Considerando que o sistema operacional esteja instalado e configurado corretamente, execute: Debian Like sudo aptitude install build-essential; RedHat Like sudo yum install gcc gpp cpp libc-dev libc6-dev make;

Instalação do PZP
Baixe e descompacte primeiramente o Plone-2.5.5-UnifiedInstaller. 1.wget https://launchpad.net/plone/2.5/2.5.5/+download/Plone2.5.5-UnifiedInstaller.tgz 2.tar xvzf Plone-2.5.5-UnifiedInstaller.tgz -C /tmp 3.cd /tmp/Plone-2.5.5-UnifiedInstaller 4.vim install.sh

1.#!/bin/sh 2.# 3.# Unified Plone installer build script 4.# Author: Kamal Gill (kamalgill at mac.com) 5.# 6.# Note: this script must be run as root 7.# 8.# Configure Plone installation options 9.# 10.PLONE_HOME=/opt/Plone-2.5.5 11.LOCAL_HOME=$PLONE_HOME 12.# Edite a linha 10, PLONE_HOME, com o local de instalação desejado, salve e feche o arquivo ([esc] :qw); 5. Agora execute o script de instalação: ./install.sh; ou su ; ./install.sh Nesta fase, será compilado um ambiente isolado do sistema operacional, no diretório escolhido para ser instalado, onde todos os componentes necessários para o ambiente, estão contidos.

Instalação do Five
1. Baixe o pacote wget http://codespeak.net/z3/five/release/Five-1.4.4.tgz 2. Localize onde o Five está instalado na estrutura; find /tmp/Plone-2.5.5 -name "*Five*" O resultado deverá ser semelhante a este: /tmp/Plone-2.5.5/lib/python/Products/Five 3. e substitua-o pela versão proposta; com estes comandos: sudo rm /tmp/Plone-2.5.5/lib/python/Products/Five; sudo tar xvzf Five-1.4.4.tgz -C /tmp/Plone2.5.5/lib/python/Products; 4. ou somente sudo tar xvzf Five-1.4.4.tgz -C /tmp/Plone2.5.5/lib/python/Products;

Instalação do PIL
1. Baixe o pacote wget http://effbot.org/downloads/Imaging-1.1.7.tar.gz 2. Descompacte-o: tar xvzf Imaging-1.1.7.tar.gz -C /tmp/ 3. Acesse o diretório descompactado: cd /tmp/Imaging-1.1.7/ 4. Proceda com o comando abaixo para instalação: /tmp/Plone-2.5.5/Python-2.4.4/bin/python setup.py install

Instalação do Reportlab
1. Baixe o pacote wget http://www.reportlab.com/ftp/reportlab-2.4.tar.gz 2. Descompacte-o: tar xvzf reportlab-2.4.tar.gz -C /tmp/ 3. Acesse o diretório descompactado: cd /tmp/ReportLab_2_4/ 4. Proceda com o comando abaixo para instalação: /tmp/Plone-2.5.5/Python-2.4.4/bin/python setup.py install

Entendendo a Estrutura PZP
ll /tmp/Plone-2.5.5 total 32 -rw-rw---- 1 plone root 710 2011-10-17 21:56 adminPassword.txt drwxrwxr-x 2 plone root 4096 2011-10-17 21:55 bin drwxrwxr-x 2 plone root 4096 2011-10-17 21:55 doc drwxrwxr-x 3 plone root 4096 2011-10-17 21:55 lib drwxrwxr-x 6 plone root 4096 2011-10-17 21:52 Python-2.4.4 drwxr-xr-x 2 root root 4096 2011-10-17 21:56 receipts drwxrwxr-x 10 plone root 4096 2011-10-17 21:55 skel drwxrwxr-x 7 plone root 4096 2011-10-17 21:56 zeocluster

adminPassword.txt – contem usuário e senha para logar na ZMI, Zope Manage Interface; bin – contem os binários do framework Zope; doc – contem alguns arquivos da documentação do ZOPE; lib – contem as bibliotecas utilizadas pelo ambiente; Python-2.4.4 – contem o python completo; receipts – contem o relatório de instalação, com as informações: Plone 2.5.5 install completed on Seg Out 17 21:56:06 BRST 2011; • skel – contem o esqueleto modelo para uma instancia zope; • zeocluster – contem as instancias client e server do zope; • • • • • •

Nesta compilação foi criado um ambiente de cluster de processamento. Cada instancia do PZP, quando iniciada será executada em um processador, caso o host seja multiprocessado; e a configuração contém duas instancias zope client e umas zope server. O diretório zeocluster, é o diretório em evidência neste tutorial. Onde pode-se configurar as particularidades nas instancias. drwxrwxr-x drwxrwxr-x drwxrwxr-x drwxrwxr-x drwxrwxr-x • • • • • 2 plone root 4096 2011-10-17 21:56 bin 9 plone root 4096 2011-10-17 21:55 client1 9 plone root 4096 2011-10-17 21:55 client2 45 plone staff 4096 2011-10-17 21:55 Products 6 plone root 4096 2011-10-17 21:55 server

bin – scripts de controle cluster client1 – configuração do zope client client2 – configuração do zope client Products – produtos plone, que são módulos agregadores de funções; server – configuração do servidor; ZServer - Zope Server Web, ZODB - Zope Object Data Base;

Boas Práticas
As duas instancias zope client, servem para balancear as requisições; e devem ser idênticas para funcionar adequadamente. Uma forma de garantir a igualdade de funcionalidades é compartilha os mesmos módulos agregadores de funções. E a maneira mais fácil de faze-lo é utilizando links simbólicos. cd /tmp/Plone-2.5.5/zeocluster/client1 ln -sf ../Products . cd /tmp/Plone-2.5.5/zeocluster/client2 ln -sf ../Products .

Para efeito de organização, principalmente se o ambiente tiver diversos produtos plone, uma boa prática é separar os produtos originais, ou básicos; antes de instalar novos produtos.

mv Product plone; mkdir Product; cd Product; ln -s ../plone/* .

Conclusão
Agora o ambiente esta pronto para ser iniciado. Basta executar: sudo /tmp/Plone-2.5.5/zeocluster/bin/startcluster.sh Verificar portas ativas: netstat -nlt Se as portas não foram alteradas, 8100 escultará zope server, 8080 zope client1 e 8081 zope client2. Acessando a ZMI No navegador digite a url: http://localhost:8080/manage Reiniciar: sudo /tmp/Plone-2.5.5/zeocluster/bin/restartcluster.sh Encerrar: sudo /tmp/Plone-2.5.5/zeocluster/bin/restartcluster.sh Para instalar novos produtos plone, instale-os no diretório /tmp/Plone2.5.5/zeocluster/Products/, que será compartilhado entre as instâncias que seguirem as boas práticas sitadas neste tutorial. Para que se tenha efeito é sempre necessário reiniciar o ambiente.

Desvantagem
O PZP é um excelente CMS, a única desvantagem é manter a infraestrutura, que deve conter um servidor de aplicação PZP como mostrado neste artigo, e obrigatóriamente um servidor de Cache, em alguns casos acrescenta-se um servidor Web.

Referências
http://paginas.ufrgs.br/tutorial/dicas-iniciais/sobre-o-plone http://plone.org http://svn.plone.org http://cmsmatrix.org/matrix/cms-matrix/plone http://codespeak.net/z3/five/ http://www.pythonware.com/products/pil/ http://www.reportlab.com/docs/reportlab-userguide.pdf

Sign up to vote on this title
UsefulNot useful