From db79c343e7bf62f9ffc998e7aee50accaa86fa73 Mon Sep 17 00:00:00 2001 From: guilherme.cantoni Date: Tue, 4 Nov 2014 00:20:46 -0200 Subject: [PATCH] Correção do provisionamento do Apache Solr --- Vagrantfile.conf.example | 2 +- jod/run.sh~ | 10 ---------- sei/ConfiguracaoSEI.php | 29 ++++++++++++++++++++++++----- sei/ConfiguracaoSip.php | 10 ++++++++-- sei/Dockerfile | 8 ++++---- sei/run.sh | 3 +-- solr/Dockerfile | 87 +++++++++++++++++++++++++++++++++++++++++++++++---------------------------------------- 7 files changed, 85 insertions(+), 64 deletions(-) delete mode 100644 jod/run.sh~ diff --git a/Vagrantfile.conf.example b/Vagrantfile.conf.example index b3903cc..d7afe72 100644 --- a/Vagrantfile.conf.example +++ b/Vagrantfile.conf.example @@ -13,4 +13,4 @@ script_sip: "mysql/sip_2_5_1.sql" repositorio_arquivos: "../sei-arquivos" # Quantidade de memória utilizada pela VM do VirtualBox (em Megabytes) -memoria_vm: "2048" \ No newline at end of file +memoria_vm: "2048" diff --git a/jod/run.sh~ b/jod/run.sh~ deleted file mode 100644 index 5db7759..0000000 --- a/jod/run.sh~ +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/bash - -SOFFICE_PATH=/usr/bin/soffice -STOMCAT6_PATH=/opt/jodconverter-tomcat-2.2.2/bin/catalina.sh - -echo "Starting LibreOffice headless server" -$SOFFICE_PATH --headless --nologo --nofirststartwizard --accept="socket,host=127.0.0.1,port=8100;urp" & > /dev/null 2>&1 - -echo "Starting tomcat webserver server" -STOMCAT6_PATH run diff --git a/sei/ConfiguracaoSEI.php b/sei/ConfiguracaoSEI.php index 97573a8..02bf585 100644 --- a/sei/ConfiguracaoSEI.php +++ b/sei/ConfiguracaoSEI.php @@ -17,13 +17,23 @@ class ConfiguracaoSEI extends InfraConfiguracao { return array( 'SEI' => array( + // Endereço de acesso à aplicação SEI 'URL' => 'http://localhost/sei', + + // Habilita melhorias de performance casa aplicação esteja em produção 'Producao' => false, - 'RepositorioArquivos' => '/var/sei/arquivos'), + + // Local de armazenamento dos arquivos externos + 'RepositorioArquivos' => '/var/sei/arquivos', + + // Conjunto de módulos integrados na aplicação. + // Exemplo: 'Modulos' => array('ModuloA' => dirname(__FILE__).'/moduloa') + 'Modulos' => array(), + ), 'PaginaSEI' => array( 'NomeSistema' => 'SEI', - 'NomeSistemaComplemento' => '', + 'NomeSistemaComplemento' => 'v2.5.1', 'LogoMenu' => ''), 'SessaoSEI' => array( @@ -82,7 +92,17 @@ class ConfiguracaoSEI extends InfraConfiguracao { 'HostWebService' => array( 'Edoc' => array('[Servidor .NET]'), - 'Sip' => array('*')), + + //Referências (IP e nome na rede) da máquina que hospeda o SIP + 'Sip' => array('*'), + + //Referências (IP e nome na rede) das máquinas de veículos de publicação externos cadastrados no SEI. + 'Publicacao' => array('*'), + + //Referências (IP e nome na rede) da máquina que hospeda o formulário de Ouvidoria personalizado. + //Se utilizar o formulário padrão do SEI, então configurar com as máquinas dos nós de aplicação do SEI. + 'Ouvidoria' => array('*'), + ), 'InfraMail' => array( 'Tipo' => '1', //1 = sendmail (neste caso não é necessário configurar os atributos abaixo), 2 = SMTP @@ -92,8 +112,7 @@ class ConfiguracaoSEI extends InfraConfiguracao { 'Autenticar' => false, //se true então informar Usuario e Senha 'Usuario' => '', 'Senha' => '', - 'Protegido' => ''), //campo usado em desenvolvimento, se tiver um email preenchido entao todos os emails enviados terao o destinatario ignorado e substituído por este valor (evita envio incorreto de email) - + 'Protegido' => ''), //campo usado em desenvolvimento, se tiver um email preenchido entao todos os emails enviados terao o destinatario ignorado e substituído por este valor (evita envio incorreto de email) ); } } diff --git a/sei/ConfiguracaoSip.php b/sei/ConfiguracaoSip.php index ef15268..e96b598 100644 --- a/sei/ConfiguracaoSip.php +++ b/sei/ConfiguracaoSip.php @@ -16,10 +16,15 @@ class ConfiguracaoSip extends InfraConfiguracao { public function getArrConfiguracoes(){ return array( 'Sip' => array( + // Endereço de acesso à aplicação SEI 'URL' => 'http://localhost/sip', + + // Habilita melhorias de performance casa aplicação esteja em produção 'Producao' => false), - 'PaginaSip' => array('NomeSistema' => 'SIP'), + 'PaginaSip' => array( + 'NomeSistema' => 'SIP', + 'NomeSistemaComplemento' => 'v2.5.1'), 'SessaoSip' => array( 'SiglaOrgaoSistema' => 'ABC', @@ -39,7 +44,8 @@ class ConfiguracaoSip extends InfraConfiguracao { 'HostWebService' => array( 'Replicacao' => array('*'), //endereço ou IP da máquina que implementa o serviço de replicação de usuários 'Pesquisa' => array('*'), //endereços/IPs das máquinas do SEI - 'Autenticacao' => array('*')), //endereços/IPs das máquinas do SEI + 'Autenticacao' => array('*') //endereços/IPs das máquinas do SEI + ), 'InfraMail' => array( 'Tipo' => '1', //1 = sendmail (neste caso não é necessário configurar os atributos abaixo), 2 = SMTP diff --git a/sei/Dockerfile b/sei/Dockerfile index 08898bf..5ecdef9 100644 --- a/sei/Dockerfile +++ b/sei/Dockerfile @@ -1,5 +1,5 @@ ########################################################### -# Dockerfile de construção do container WebApp +# Dockerfile de construção do container WebApp # utilizado pelo SEI e pelo SIP # # Baseado no CentOS 6.X @@ -15,7 +15,7 @@ MAINTAINER PEN - Processo Eletrônico Nacional # Instalação do MySQL seguindo as recomendações descritas na documentação do SEI # Ref: http://sei.processoeletronico.gov.br/wiki/manual_de_instalacao# -# Instalação do servidor web Apache 2.2, memcache e demais componentes +# Instalação do servidor web Apache 2.2, memcache e demais componentes RUN yum -y update httpd-2.2.* mysql-5.1.* memcached openssl curl unzip gcc java-1.7.0-openjdk libxml2 && \ yum -y install httpd-2.2.* mysql-5.1.* memcached openssl curl unzip gcc java-1.7.0-openjdk libxml2 @@ -27,7 +27,7 @@ RUN yum -y update php-* && \ yum -y install php-5.3.* php-common php-cli php-pear php-bcmath php-gd php-gmp \ php-imap php-intl php-ldap php-mbstring php-mysql php-odbc php-pdo php-pecl-apc \ php-pspell php-zlib php-snmp php-soap php-xml php-xmlrpc php-zts php-devel \ - php-pecl-apc-devel php-pecl-memcache php-calendar php-shmop + php-pecl-apc-devel php-pecl-memcache php-calendar php-shmop # Instalação do componentes UploadProgress RUN pecl install uploadprogress && \ @@ -48,4 +48,4 @@ RUN chmod +x /run.sh EXPOSE 80 # Inicialização dos serviços Apache e Memcache -CMD ["/run.sh"] \ No newline at end of file +CMD ["/run.sh"] diff --git a/sei/run.sh b/sei/run.sh index 8ef398c..fb4da55 100644 --- a/sei/run.sh +++ b/sei/run.sh @@ -14,5 +14,4 @@ mkdir /var/www/html/sip/upload && chmod -R 666 /var/www/html/sip/upload /etc/init.d/memcached start 2>&1 > /dev/null # Inicialização do servidor web -/usr/sbin/httpd -DFOREGROUND - +/usr/sbin/httpd -DFOREGROUND diff --git a/solr/Dockerfile b/solr/Dockerfile index ed54ad4..ecdf74d 100644 --- a/solr/Dockerfile +++ b/solr/Dockerfile @@ -11,55 +11,52 @@ FROM centos:centos6 # Autor e mantenedor do container MAINTAINER PEN - Processo Eletrônico Nacional -# Atualização do source list do repositório -# RUN yum update -y && yum upgrade -y - ################## INICIO DA INSTALACAO ###################### # Instalação do MySQL seguindo as recomendações descritas na documentação do SEI # Ref: http://# # Instalação do pacote Java JDK -RUN yum update -y java-1.7.0-openjdk-devel && \ - yum install -y java-1.7.0-openjdk-devel +RUN yum update -y java-1.7.0-openjdk && \ + yum install -y java-1.7.0-openjdk # Instalação dos utilitários utilizados no provisionamento -RUN yum install -y wget tar curl +RUN yum install -y wget tar curl which # Criação de usuário de execução do serviço -RUN useradd -r -s /bin/bash solr +RUN useradd solr -# Obtenção do pacote de instalação do Solr 4.9 -RUN wget -q -O /opt/solr-4.9.0.tgz http://archive.apache.org/dist/lucene/solr/4.9.0/solr-4.9.0.tgz +# Obtenção do pacote de instalação do Solr 4.0 +RUN wget -q -O /opt/solr-4.0.0.tgz http://archive.apache.org/dist/lucene/solr/4.0.0/apache-solr-4.0.0.tgz -# Instalação do Solr -RUN tar xvz -C /opt -f /opt/solr-4.9.0.tgz && chown -R solr:solr /opt/solr-4.9.0 && rm /opt/solr-4.9.0.tgz +# Instalação do Apache Solr +RUN tar xvz -C /opt -f /opt/solr-4.0.0.tgz && mv /opt/apache-solr-4.0.0 /opt/solr && \ + chown -R solr:solr /opt/solr && rm /opt/solr-4.0.0.tgz # Configuração dos parâmetros default -RUN echo "JAVA_OPTIONS='-Dsolr.solr.home=/opt/solr-4.9.0/example/solr $JAVA_OPTIONS'" | tee -a /etc/default/jetty && \ - echo "JETTY_HOME=/opt/solr-4.9.0/example" | tee -a /etc/default/jetty && \ +RUN echo "JAVA_OPTIONS='-Dsolr.solr.home=/opt/solr/example/solr $JAVA_OPTIONS'" | tee -a /etc/default/jetty && \ + echo "JETTY_HOME=/opt/solr/example" | tee -a /etc/default/jetty && \ echo "JETTY_USER=solr" | tee -a /etc/default/jetty # Configuração do script de inicialização automática -RUN wget -q -O /etc/init.d/solr http://dev.eclipse.org/svnroot/rt/org.eclipse.jetty/jetty/trunk/jetty-distribution/src/main/resources/bin/jetty.sh -RUN chmod +x /etc/init.d/solr +RUN wget -q -O /etc/init.d/solr http://dev.eclipse.org/svnroot/rt/org.eclipse.jetty/jetty/trunk/jetty-distribution/src/main/resources/bin/jetty.sh && chmod +x /etc/init.d/solr # Criação dos diretório de armazenamento de índices RUN mkdir /var/opt/sei && \ - mkdir /var/opt/sei/sei-protocolos && ln -s /var/opt/sei/sei-protocolos /opt/solr-4.9.0/example/solr/ && \ - mkdir /var/opt/sei/sei-bases-conhecimento && ln -s /var/opt/sei/sei-bases-conhecimento /opt/solr-4.9.0/example/solr/ && \ - mkdir /var/opt/sei/sei-publicacoes && ln -s /var/opt/sei/sei-publicacoes /opt/solr-4.9.0/example/solr/ + mkdir /var/opt/sei/sei-protocolos && ln -s /var/opt/sei/sei-protocolos /opt/solr/example/solr/ && \ + mkdir /var/opt/sei/sei-bases-conhecimento && ln -s /var/opt/sei/sei-bases-conhecimento /opt/solr/example/solr/ && \ + mkdir /var/opt/sei/sei-publicacoes && ln -s /var/opt/sei/sei-publicacoes /opt/solr/example/solr/ # Copia do conjunto de configurações padrão do Solr -RUN cp -R /opt/solr-4.9.0/example/solr/collection1/conf /var/opt/sei/sei-protocolos/ && \ - cp -R /opt/solr-4.9.0/example/solr/collection1/conf /var/opt/sei/sei-bases-conhecimento/ && \ - cp -R /opt/solr-4.9.0/example/solr/collection1/conf /var/opt/sei/sei-publicacoes/ +RUN cp -R /opt/solr/example/solr/collection1/conf /var/opt/sei/sei-protocolos/ && \ + cp -R /opt/solr/example/solr/collection1/conf /var/opt/sei/sei-bases-conhecimento/ && \ + cp -R /opt/solr/example/solr/collection1/conf /var/opt/sei/sei-publicacoes/ # Removeção dos arquivos schema.xml e solrconfig.xml das cópias RUN rm /var/opt/sei/sei-protocolos/conf/schema.xml && \ - rm /var/opt/sei/sei-bases-conhecimento/conf/schema.xml && \ - rm /var/opt/sei/sei-publicacoes/conf/schema.xml && \ rm /var/opt/sei/sei-protocolos/conf/solrconfig.xml && \ + rm /var/opt/sei/sei-bases-conhecimento/conf/schema.xml && \ rm /var/opt/sei/sei-bases-conhecimento/conf/solrconfig.xml && \ + rm /var/opt/sei/sei-publicacoes/conf/schema.xml && \ rm /var/opt/sei/sei-publicacoes/conf/solrconfig.xml # Configuração dos índices do SEI @@ -76,34 +73,44 @@ RUN mkdir /var/opt/sei/sei-protocolos/conteudo && \ mkdir /var/opt/sei/sei-publicacoes/conteudo # Configuração dos links a instalação do Solr e o índice Protocolo -RUN ln -s /opt/solr-4.9.0/contrib/ /var/opt/sei/sei-protocolos/contrib && \ - ln -s /opt/solr-4.9.0/dist/ /var/opt/sei/sei-protocolos/dist && \ - ln -s /opt/solr-4.9.0/example/lib/ /var/opt/sei/sei-protocolos/lib +RUN ln -s /opt/solr/contrib/ /var/opt/sei/sei-protocolos/contrib && \ + ln -s /opt/solr/dist/ /var/opt/sei/sei-protocolos/dist && \ + ln -s /opt/solr/example/lib/ /var/opt/sei/sei-protocolos/lib # Configuração dos links a instalação do Solr e o índice Base de Conhecimento -RUN ln -s /opt/solr-4.9.0/contrib/ /var/opt/sei/sei-bases-conhecimento/contrib && \ - ln -s /opt/solr-4.9.0/dist/ /var/opt/sei/sei-bases-conhecimento/dist && \ - ln -s /opt/solr-4.9.0/example/lib/ /var/opt/sei/sei-bases-conhecimento/lib +RUN ln -s /opt/solr/contrib/ /var/opt/sei/sei-bases-conhecimento/contrib && \ + ln -s /opt/solr/dist/ /var/opt/sei/sei-bases-conhecimento/dist && \ + ln -s /opt/solr/example/lib/ /var/opt/sei/sei-bases-conhecimento/lib # Configuração dos links a instalação do Solr e o índice Publicações -RUN ln -s /opt/solr-4.9.0/contrib/ /var/opt/sei/sei-publicacoes/contrib && \ - ln -s /opt/solr-4.9.0/dist/ /var/opt/sei/sei-publicacoes/dist && \ - ln -s /opt/solr-4.9.0/example/lib/ /var/opt/sei/sei-publicacoes/lib +RUN ln -s /opt/solr/contrib/ /var/opt/sei/sei-publicacoes/contrib && \ + ln -s /opt/solr/dist/ /var/opt/sei/sei-publicacoes/dist && \ + ln -s /opt/solr/example/lib/ /var/opt/sei/sei-publicacoes/lib # Configuração de log e permissões de pastas RUN mkdir /var/log/solr -RUN chown solr:solr -R /opt/solr-4.9.0 /var/opt/sei /var/log/solr +RUN chown solr:solr -R /opt/solr /var/opt/sei /var/log/solr + +# Construção dos índices de protocolos do SEI +RUN service solr start && sleep 20 && \ + curl 'http://localhost:8983/solr/admin/cores?action=CREATE&name=sei-protocolos&instanceDir=/var/opt/sei/sei-protocolos&config=sei-protocolos-config.xml&schema=sei-protocolos-schema.xml&dataDir=/var/opt/sei/sei-protocolos/conteudo' + +# Construção dos índices da base de conhecimento do SEI +RUN service solr start && sleep 20 && \ + curl 'http://localhost:8983/solr/admin/cores?action=CREATE&name=sei-bases-conhecimento&instanceDir=/var/opt/sei/sei-bases-conhecimento&config=sei-bases-conhecimento-config.xml&schema=sei-bases-conhecimento-schema.xml&dataDir=/var/opt/sei/sei-bases-conhecimento/conteudo' -# Construção dos índices do SEI -RUN service solr start && sleep 6 && \ - curl http://localhost/solr/admin/cores?action=CREATE&name=seiprotocolos&instanceDir=/var/opt/sei/sei-protocolos&config=sei-protocolosconfig.xml&schema=sei-protocolos-schema.xml&dataDir=/var/opt/sei/sei-protocolos/conteudo && \ - curl http://localhost/solr/admin/cores?action=CREATE&name=sei-basesconhecimento&instanceDir=/var/opt/sei/sei-bases-conhecimento&config=sei-bases-conhecimentoconfig.xml&schema=sei-bases-conhecimento-schema.xml&dataDir=/var/opt/sei/sei-basesconhecimento/conteudo && \ - curl http://localhost/solr/admin/cores?action=CREATE&name=seipublicacoes&instanceDir=/var/opt/sei/sei-publicacoes&config=sei-publicacoesconfig.xml&schema=sei-publicacoes-schema.xml&dataDir=/var/opt/sei/sei-publicacoes/conteudo +# Construção dos índices de publicações do SEI +RUN service solr start && sleep 20 && \ + curl 'http://localhost:8983/solr/admin/cores?action=CREATE&name=sei-publicacoes&instanceDir=/var/opt/sei/sei-publicacoes&config=sei-publicacoes-config.xml&schema=sei-publicacoes-schema.xml&dataDir=/var/opt/sei/sei-publicacoes/conteudo' -#RUN service solr start && sleep 6 && curl http://localhost/solr/admin/cores?action=RELOAD +# Construção dos índices de publicações do SEI +RUN service solr start && sleep 20 && \ + curl 'http://localhost:8983/solr/admin/cores?action=RELOAD&core=sei-protocolos' && \ + curl 'http://localhost:8983/solr/admin/cores?action=RELOAD&core=sei-bases-conhecimento' && \ + curl 'http://localhost:8983/solr/admin/cores?action=RELOAD&core=sei-publicacoes' ##################### FIM DA INSTALACAO ##################### -WORKDIR /opt/solr-4.9.0/example +WORKDIR /opt/solr/example # Exposição da porta de conexão ao Apache EXPOSE 8983 -- libgit2 0.21.2