Commit 5b82c6346ff8d30e8503ee9244f9cd1314355da2
Exists in
sei-v3.0.0-oracle-dockerimages
and in
2 other branches
Ajustes finais do ambiente e início de testes
Showing
13 changed files
with
146 additions
and
194 deletions
Show diff stats
Vagrantfile
1 | 1 | # -*- mode: ruby -*- |
2 | 2 | # vi: set ft=ruby : |
3 | 3 | |
4 | -# Vagrantfile API/syntax version. Don't touch unless you know what you're doing! | |
5 | 4 | VAGRANTFILE_API_VERSION = "2" |
6 | 5 | |
7 | 6 | Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| |
8 | 7 | |
9 | 8 | # Atribuição do hostname da máquina virtual |
10 | 9 | config.vm.hostname = "sei-vagrant" |
11 | - | |
12 | 10 | config.vm.box = "ubuntu/trusty64" |
13 | 11 | |
14 | 12 | # Configuração do redirecionamento entre Máquina Virtual e Host |
... | ... | @@ -23,11 +21,12 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| |
23 | 21 | config.vm.synced_folder ".", "/mnt/sei/ops" |
24 | 22 | config.vm.synced_folder "../sei", "/mnt/sei/src", mount_options: ["dmode=777", "fmode=777"] |
25 | 23 | |
24 | + # Configurações padrão da máquina virtual host | |
26 | 25 | config.vm.provider "virtualbox" do |vb| |
27 | 26 | vb.customize ["modifyvm", :id, "--memory", "2048", "--usb", "off", "--audio", "none"] |
28 | 27 | end |
29 | 28 | |
30 | - # Provisionamento da Máquina Virtual responsável por manter os containers do Docker | |
29 | + # Provisionamento da máquina virtual responsável por manter os containers do Docker | |
31 | 30 | config.vm.provision "docker" do |docker| |
32 | 31 | |
33 | 32 | # Constrói imagens dos containers utilizados no provicionamento |
... | ... | @@ -35,11 +34,11 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| |
35 | 34 | docker.build_image "/mnt/sei/ops/mysql", args: "-t 'processoeletronico/mysql'" |
36 | 35 | docker.build_image "/mnt/sei/ops/sei", args: "-t 'processoeletronico/sei'" |
37 | 36 | docker.build_image "/mnt/sei/ops/memcached", args: "-t 'processoeletronico/memcached'" |
38 | - docker.pull_images "schickling/mailcatcher" | |
39 | - #docker.build_image "/mnt/sei/ops/jod", args: "-t 'processoeletronico/jod'" | |
37 | + docker.build_image "/mnt/sei/ops/fakesmtp", args: "-t 'processoeletronico/fakesmtp'" | |
38 | + docker.build_image "/mnt/sei/ops/jod", args: "-t 'processoeletronico/jod'" | |
40 | 39 | |
41 | 40 | # docker run -d --name smtp -p 1080:1080 schickling/mailcatcher:latest |
42 | - docker.run "smtp", image: "schickling/mailcatcher", | |
41 | + docker.run "smtp", image: "processoeletronico/fakesmtp", | |
43 | 42 | daemonize: true, |
44 | 43 | args: "-p 1080:1080" |
45 | 44 | |
... | ... | @@ -58,18 +57,19 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| |
58 | 57 | daemonize: true, |
59 | 58 | args: "-p 8983:8983" |
60 | 59 | |
60 | + # Container do Jod desativado por questões de otimização | |
61 | 61 | # docker run -d --name jod -p 8080:8080 processoeletronico/jod:latest |
62 | - #docker.run "jod", image: "processoeletronico/jod:latest", | |
63 | - # daemonize: true, | |
64 | - # args: "-p 8080:8080" | |
62 | + docker.run "jod", image: "processoeletronico/jod:latest", | |
63 | + daemonize: true, | |
64 | + args: "-p 8080:8080" | |
65 | 65 | |
66 | - # docker run -d --name sei -p 80:80 --link solr:solr --link db:db --link memcached:memcached -v /mnt/sei/src:/opt processoeletronico/sei:latest | |
66 | + # docker run -d --name sei -p 80:80 --link solr:solr --link db:db --link memcached:memcached --link smtp:smtp -v /mnt/sei/src:/opt processoeletronico/sei:latest | |
67 | 67 | docker.run "sei", image: "processoeletronico/sei:latest", |
68 | 68 | daemonize: true, |
69 | - args: "-p 80:80 --link db:db --link solr:solr --link memcached:memcached --link smtp:smtp -v /mnt/sei/src:/opt" | |
69 | + args: "-p 80:80 --link db:db --link solr:solr --link memcached:memcached --link smtp:smtp --link jod:jod -v /mnt/sei/src:/opt" | |
70 | 70 | end |
71 | 71 | |
72 | 72 | # Inicialização dos containers em caso de reinicialização da máquina host |
73 | 73 | # A inicialização é realizada de forma sequencial para evitar conflito no mapeamento de volumes no Docker |
74 | - config.vm.provision "shell", run: "always", inline: "docker restart solr && docker restart memcached && docker restart smtp && docker restart db && docker restart sei" | |
74 | + config.vm.provision "shell", run: "always", inline: "docker restart jod && docker restart solr && docker restart memcached && docker restart smtp && docker restart db && docker restart sei" | |
75 | 75 | end | ... | ... |
Vagrantfile_Distrib
... | ... | @@ -2,7 +2,7 @@ |
2 | 2 | # vi: set ft=ruby : |
3 | 3 | |
4 | 4 | unless Vagrant.has_plugin?("vagrant-vbguest") |
5 | - raise "\n\nAmbiente de desenvolvimento não pode ser criado não foi encontrado o plugin vagrant-vbguest.\n"+ | |
5 | + raise "\n\nAmbiente de desenvolvimento não pode ser criado pois não foi encontrado o plugin vagrant-vbguest.\n"+ | |
6 | 6 | "Para solucionar o problema, execute o seguinte comando no diretório raiz do projeto.\n\n"+ |
7 | 7 | "> vagrant plugin install vagrant-vbguest \n\n" |
8 | 8 | end |
... | ... | @@ -17,7 +17,7 @@ Vagrant.configure(2) do |config| |
17 | 17 | config.ssh.password = "vagrant" |
18 | 18 | |
19 | 19 | # Configuração do diretório local onde deverá estar disponibilizado os códigos-fontes do SEI (sei, sip, infra_php, infra_css, infra_js) |
20 | - config.vm.synced_folder ".", "/opt", mount_options: ["dmode=777", "fmode=777"] | |
20 | + config.vm.synced_folder ".", "/mnt/sei/src", mount_options: ["dmode=777", "fmode=777"] | |
21 | 21 | |
22 | 22 | # Configuração do redirecionamento entre Máquina Virtual e Host |
23 | 23 | # Necessário permissões de root para utilizar a porta 80 (> 1024) |
... | ... | @@ -28,5 +28,6 @@ Vagrant.configure(2) do |config| |
28 | 28 | config.vm.network :forwarded_port, guest: 1080, host: 1080 # MailCatcher |
29 | 29 | |
30 | 30 | # Inicialização dos containers em caso de reinicialização da máquina host |
31 | - config.vm.provision "shell", run: "always", inline: "docker restart solr && docker restart memcached && docker restart smtp && docker restart db && docker restart sei" | |
31 | + config.vm.provision "shell", run: "always", inline: "docker restart jod && docker restart solr && docker restart memcached && docker restart smtp && docker restart db && docker restart sei" | |
32 | + | |
32 | 33 | end | ... | ... |
... | ... | @@ -0,0 +1,10 @@ |
1 | +############################################################################## | |
2 | +# Dockerfile de construção do container WebApp utilizado pelo SEI e pelo SIP # | |
3 | +############################################################################## | |
4 | + | |
5 | +FROM schickling/mailcatcher | |
6 | + | |
7 | +MAINTAINER PEN - Processo Eletrônico Nacional | |
8 | + | |
9 | +EXPOSE 1080 | |
10 | + | ... | ... |
jod/Dockerfile
... | ... | @@ -2,17 +2,17 @@ |
2 | 2 | # Dockerfile de construção do container JOD utilizado pelo SEI e pelo SIP # |
3 | 3 | ########################################################################### |
4 | 4 | |
5 | -# Definição da imagem de base para o CentOS 6.X | |
5 | +# Definição da imagem de base para o OpenJDK 8 | |
6 | 6 | FROM openjdk:8 |
7 | 7 | |
8 | 8 | # Autor e mantenedor do container |
9 | 9 | MAINTAINER PEN - Processo Eletrônico Nacional |
10 | 10 | |
11 | -ENV TERM xterm | |
12 | - | |
13 | 11 | ################## INICIO DA INSTALACAO ###################### |
14 | 12 | # Instalação do JOD Converter seguindo as recomendações descritas na documentação do SEI |
15 | 13 | |
14 | +ENV TERM xterm | |
15 | + | |
16 | 16 | # Instalação da api de serviços de conversão de documentos |
17 | 17 | COPY jodconverter-tomcat-2.2.2.zip /opt/ |
18 | 18 | ... | ... |
jod/install.sh
... | ... | @@ -4,7 +4,7 @@ set -e |
4 | 4 | |
5 | 5 | # Instalação do pacote Java JDK e utilitários utilizados no provisionamento |
6 | 6 | apt-get -y update |
7 | -apt-get install -y --no-install-recommends wget unzip dos2unix libreoffice | |
7 | +apt-get install -y --no-install-recommends wget unzip libreoffice | |
8 | 8 | apt-get -y clean all |
9 | 9 | |
10 | 10 | # Instalação da api de serviços de conversão de documentos |
... | ... | @@ -12,7 +12,6 @@ unzip /opt/jodconverter-tomcat-2.2.2.zip -d /opt |
12 | 12 | rm /opt/jodconverter-tomcat-2.2.2.zip |
13 | 13 | |
14 | 14 | # Script de inicialização do container entry-point |
15 | -dos2unix /entrypoint.sh | |
16 | 15 | chmod +x /entrypoint.sh |
17 | 16 | |
18 | 17 | exit 0 | ... | ... |
mysql/Dockerfile
1 | 1 | ############################################################ |
2 | -# Dockerfile de construção do container do MySQL | |
3 | -# utilizado pelo SEI e pelo SIP | |
4 | -# | |
5 | -# Baseado no CentOS 6.X | |
2 | +# Dockerfile de construção do container do MySQL utilizado pelo SEI e pelo SIP | |
6 | 3 | ############################################################ |
7 | 4 | |
8 | 5 | # Definição da imagem de base para o CentOS 6.X |
... | ... | @@ -14,40 +11,14 @@ MAINTAINER PEN - Processo Eletrônico Nacional |
14 | 11 | ################## INICIO DA INSTALACAO ###################### |
15 | 12 | # Instalação do MySQL seguindo as recomendações descritas na documentação do SEI |
16 | 13 | |
14 | +ENV TERM xterm | |
17 | 15 | ENV MYSQL_ALLOW_EMPTY_PASSWORD 'yes' |
18 | -#ENV MYSQL_DATABASE 'sei' | |
19 | -#ENV MYSQL_USER 'sei_user' | |
20 | -#ENV MYSQL_PASSWORD 'sei_user' | |
21 | - | |
22 | -# Cópia dos backups dos bancos de dados do SEI e SIP | |
23 | -#ADD sei-db-ref-executivo/mysql/sei_2_6_0_BD_Ref_Exec.sql /opt/sei_mysql.sql | |
24 | -#ADD sei-db-ref-executivo/mysql/sip_2_6_0_BD_Ref_Exec.sql /opt/sip_mysql.sql | |
25 | 16 | |
17 | +COPY install.sh /install.sh | |
26 | 18 | COPY 1-preinstall.sql /tmp/1-preinstall.sql |
27 | -COPY sei-db-ref-executivo/mysql/sei_2_6_0_BD_Ref_Exec.sql /tmp/2-sei_mysql.sql | |
28 | -COPY sei-db-ref-executivo/mysql/sip_2_6_0_BD_Ref_Exec.sql /tmp/3-sip_mysql.sql | |
19 | +COPY sei-db-ref-executivo/mysql/sei_3_0_0_BD_Ref_Exec.sql /tmp/2-sei_mysql.sql | |
20 | +COPY sei-db-ref-executivo/mysql/sip_3_0_0_BD_Ref_Exec.sql /tmp/3-sip_mysql.sql | |
29 | 21 | COPY 4-posinstall.sql /tmp/4-posinstall.sql |
30 | 22 | |
31 | -#ADD my.cnf /etc/my.cnf | |
32 | -#ADD install.sh /install.sh | |
33 | - | |
34 | -# Instalação do MySQL 5.7 e demais componentes | |
35 | -#RUN bash install.sh | |
36 | - | |
37 | -RUN cat /tmp/1-preinstall.sql > /docker-entrypoint-initdb.d/install.sql && \ | |
38 | - echo "USE sei;" >> /docker-entrypoint-initdb.d/install.sql && \ | |
39 | - cat /tmp/2-sei_mysql.sql >> /docker-entrypoint-initdb.d/install.sql && \ | |
40 | - echo "USE sip;" >> /docker-entrypoint-initdb.d/install.sql && \ | |
41 | - cat /tmp/3-sip_mysql.sql >> /docker-entrypoint-initdb.d/install.sql && \ | |
42 | - cat /tmp/4-posinstall.sql >> /docker-entrypoint-initdb.d/install.sql | |
43 | - | |
44 | -##################### FIM DA INSTALACAO ##################### | |
45 | - | |
46 | -# Definição do terminal a ser utilizado | |
47 | -#ENV TERM xterm | |
48 | - | |
49 | -# Exposição da porta de conexão ao MySQL Server | |
50 | -#EXPOSE 3306 | |
23 | +RUN bash /install.sh | |
51 | 24 | |
52 | -# Inicialização do serviço | |
53 | -#CMD ["/usr/bin/mysqld_safe", "--bind-address=0.0.0.0"] | ... | ... |
mysql/install.sh
... | ... | @@ -2,38 +2,21 @@ |
2 | 2 | |
3 | 3 | set -e |
4 | 4 | |
5 | -echo "Inicialização do banco de dados" | |
6 | -/entrypoint.sh | |
5 | +# Constroi script de restauração da base de dados do sistema | |
6 | +cat /tmp/1-preinstall.sql > /docker-entrypoint-initdb.d/install.sql | |
7 | 7 | |
8 | -echo "Criação dos bancos de dados do sistema" | |
9 | -mysql -e "CREATE DATABASE IF NOT EXISTS 'sei';" | |
10 | -mysql -e "CREATE DATABASE IF NOT EXISTS 'sip';" | |
8 | +# Script de restauração da base de dados do SEI | |
9 | +echo "USE sei;" >> /docker-entrypoint-initdb.d/install.sql | |
10 | +cat /tmp/2-sei_mysql.sql >> /docker-entrypoint-initdb.d/install.sql | |
11 | 11 | |
12 | -# Criação dos usuários utilizados na conexão com SEI e SIP | |
13 | -mysql -e "CREATE USER 'sip_user'@'%' IDENTIFIED BY 'sip_user'" sip | |
14 | -mysql -e "CREATE USER 'sei_user'@'%' IDENTIFIED BY 'sei_user'" sei | |
15 | -mysql -e "GRANT ALL PRIVILEGES ON sip.* TO 'sip_user'@'%'" sip | |
16 | -mysql -e "GRANT ALL PRIVILEGES ON sei.* TO 'sei_user'@'%'" sei | |
12 | +#Script de restauração da base de dados do SIP | |
13 | +echo "USE sip;" >> /docker-entrypoint-initdb.d/install.sql | |
14 | +cat /tmp/3-sip_mysql.sql >> /docker-entrypoint-initdb.d/install.sql | |
17 | 15 | |
18 | -# Restauração dos bancos de dados | |
19 | -mysql sei < /opt/sei_mysql.sql | |
20 | -mysql sip < /opt/sip_mysql.sql | |
21 | -rm -f /opt/sei_mysql.sql /opt/sip_mysql.sql | |
22 | - | |
23 | -# Atualização dos parâmetros do SEI e do SIP | |
24 | -mysql -e "update orgao set sigla='ABC', descricao='ORGAO ABC' where id_orgao=0;" sip | |
25 | -mysql -e "update sistema set pagina_inicial='http://localhost/sip' where sigla='SIP';" sip | |
26 | -mysql -e "update sistema set pagina_inicial='http://localhost/sei/inicializar.php', web_service='http://localhost/sei/controlador_ws.php?servico=sip' where sigla='SEI';" sip | |
27 | -mysql -e "update orgao set sigla='ABC', descricao='ORGAO ABC' where id_orgao=0;" sei | |
28 | - | |
29 | -# Temp: Remove registros de auditoria presentes na base de referência | |
30 | -mysql -e "delete from auditoria_protocolo;" sei | |
31 | - | |
32 | -# Configuração para utilizar autenticação nativa do SEI/SIP | |
33 | -mysql -e "update orgao set sin_autenticar='N' where id_orgao=0;" sip | |
34 | - | |
35 | -# Atribuição de permissões de acesso externo para o usuário root, senha root | |
36 | -mysql -e "GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;" | |
16 | +# Aplica ajustes nas tabelas de sistema e órgão do SIP e SEI | |
17 | +cat /tmp/4-posinstall.sql >> /docker-entrypoint-initdb.d/install.sql | |
37 | 18 | |
19 | +# Correção de problema com o registro de log de documentos contendo imagens | |
20 | +echo "max_allowed_packet=268435456" >> /etc/my.cnf | |
38 | 21 | |
39 | 22 | exit 0 | ... | ... |
mysql/my.cnf
... | ... | @@ -1,26 +0,0 @@ |
1 | -[mysqld] | |
2 | -# | |
3 | -# Remove leading # and set to the amount of RAM for the most important data | |
4 | -# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%. | |
5 | -# innodb_buffer_pool_size = 128M | |
6 | -# | |
7 | -# Remove leading # to turn on a very important data integrity option: logging | |
8 | -# changes to the binary log between backups. | |
9 | -# log_bin | |
10 | -# | |
11 | -# Remove leading # to set options mainly useful for reporting servers. | |
12 | -# The server defaults are faster for transactions and fast SELECTs. | |
13 | -# Adjust sizes as needed, experiment to find the optimal values. | |
14 | -# join_buffer_size = 128M | |
15 | -# sort_buffer_size = 2M | |
16 | -# read_rnd_buffer_size = 2M | |
17 | -datadir=/var/lib/mysql | |
18 | -socket=/var/lib/mysql/mysql.sock | |
19 | - | |
20 | -# Disabling symbolic-links is recommended to prevent assorted security risks | |
21 | -symbolic-links=0 | |
22 | - | |
23 | -max_allowed_packet=268435456 | |
24 | - | |
25 | -log-error=/var/log/mysqld.log | |
26 | -pid-file=/var/run/mysqld/mysqld.pid |
sei/Dockerfile
1 | 1 | ########################################################### |
2 | -# Dockerfile de construção do container WebApp | |
3 | -# utilizado pelo SEI e pelo SIP | |
4 | -# | |
5 | -# Baseado no CentOS 6.X | |
2 | +# Dockerfile de construção do container WebApp utilizado pelo SEI e pelo SIP | |
6 | 3 | ############################################################ |
7 | 4 | |
8 | 5 | # Definição da imagem de base para o CentOS 6.X |
... | ... | @@ -13,62 +10,34 @@ MAINTAINER PEN - Processo Eletrônico Nacional |
13 | 10 | |
14 | 11 | ################## INICIO DA INSTALACAO ###################### |
15 | 12 | # Instalação do SEI seguindo as recomendações descritas na documentação do SEI |
16 | -# Ref: https://processoeletronico.gov.br/projects/sei/wiki | |
17 | 13 | |
18 | -# Instalação do servidor web Apache 2.2, memcache e demais componentes | |
19 | -RUN yum install -y epel-release && \ | |
20 | - yum -y update && \ | |
21 | - yum -y install httpd-2.2.* mysql-5.1.* memcached openssl wget curl unzip gcc java-1.7.0-openjdk libxml2 dos2unix crontabs \ | |
22 | - 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 \ | |
23 | - php-odbc php-pdo php-pecl-apc php-pspell php-zlib php-snmp php-soap php-xml php-xmlrpc php-zts php-devel \ | |
24 | - php-pecl-apc-devel php-pecl-memcache php-calendar php-shmop php-intl \ | |
25 | - php-mcrypt php-pecl-xdebug \ | |
26 | - supervisor gearmand libgearman libgearman-devel php-pecl-gearman && \ | |
27 | - yum -y clean all | |
28 | - | |
29 | - | |
30 | -# Configuração do charset do Apache | |
31 | -RUN echo "AddDefaultCharset iso-8859-1" | tee -a /etc/httpd/conf/httpd.conf | |
14 | +ENV TERM xterm | |
32 | 15 | |
33 | -# Correção do bug do VirtualBox relacionado ao Sendfile. http://docs.vagrantup.com/v2/synced-folders/virtualbox.html | |
34 | -RUN echo "EnableSendfile Off" | tee -a /etc/httpd/conf/httpd.conf | |
16 | +COPY install.sh /install.sh | |
35 | 17 | |
36 | -# Instalação do componentes UploadProgress | |
37 | -RUN pecl install uploadprogress && \ | |
38 | - echo "extension=uploadprogress.so" >> /etc/php.d/uploadprogress.ini | |
18 | +RUN bash /install.sh | |
39 | 19 | |
40 | 20 | # Configuração dos parâmetros do SEI e SIP |
41 | -ADD ConfiguracaoSEI.php /opt/sei/ConfiguracaoSEI.php | |
42 | -ADD ConfiguracaoSip.php /opt/sip/ConfiguracaoSip.php | |
21 | +COPY ConfiguracaoSEI.php /ConfiguracaoSEI.php | |
22 | +COPY ConfiguracaoSip.php /ConfiguracaoSip.php | |
43 | 23 | |
44 | 24 | # Copia arquivos necessários para a instalação |
45 | -ADD sei.ini /etc/php.d/sei.ini | |
46 | -ADD xdebug.ini /etc/php.d/xdebug.ini | |
47 | -ADD sei.conf /etc/httpd/conf.d/sei.conf | |
25 | +COPY sei.ini /etc/php.d/sei.ini | |
26 | +COPY xdebug.ini /etc/php.d/xdebug.ini | |
27 | +COPY sei.conf /etc/httpd/conf.d/sei.conf | |
48 | 28 | |
49 | 29 | # Configuração do Gearman e Supervisor, componentes necessários para a integração do SEI com Processo Eletrônico Nacional |
50 | -ADD supervisord.conf /etc/supervisord.conf | |
51 | - | |
52 | -RUN mkdir -p /var/sei/arquivos && \ | |
53 | - chmod -R 777 /var/sei/arquivos | |
54 | - | |
55 | -# Configuração dos serviços de background do Cron | |
56 | -RUN mkdir /var/log/sei | |
57 | -RUN sed -i '/session required pam_loginuid.so/c\#session required pam_loginuid.so' /etc/pam.d/crond | |
58 | -RUN echo "0 * * * * root /usr/bin/php -c /etc/php.ini /var/www/html/sei/AgendamentoTarefaSEI.php 2>&1 >> /var/log/sei/agendamento_sei.log" >> /etc/cron.d/sei | |
59 | -RUN echo "0 * * * * root /usr/bin/php -c /etc/php.ini /var/www/html/sip/AgendamentoTarefaSip.php 2>&1 >> /var/log/sei/agendamento_sip.log" >> /etc/cron.d/sei | |
30 | +COPY supervisord.conf /etc/supervisord.conf | |
60 | 31 | |
61 | 32 | # Script de inicialização do container entry-point |
62 | -ADD entrypoint.sh /entrypoint.sh | |
63 | -RUN dos2unix /entrypoint.sh && chmod +x /entrypoint.sh | |
33 | +COPY entrypoint.sh /entrypoint.sh | |
34 | +RUN chmod +x /entrypoint.sh | |
64 | 35 | |
65 | 36 | ##################### FIM DA INSTALACAO ##################### |
66 | 37 | |
67 | -# Definição do terminal a ser utilizado | |
68 | -ENV TERM xterm | |
69 | - | |
70 | 38 | # Exposição da porta de conexão ao Apache |
71 | 39 | EXPOSE 80 |
72 | 40 | |
73 | 41 | # Inicialização dos serviços Apache e Memcache |
74 | 42 | CMD ["/entrypoint.sh"] |
43 | + | ... | ... |
sei/entrypoint.sh
1 | 1 | #!/usr/bin/env bash |
2 | 2 | |
3 | +echo "127.0.0.1 sei_www" >> /etc/hosts | |
3 | 4 | echo "127.0.0.1 sip_www" >> /etc/hosts |
4 | 5 | |
5 | -# Configura localização correta da infra_php | |
6 | -#if [ -d /mnt/sei/src/infra/infra_php ]; then dir_infra_php="/mnt/sei/src/infra/infra_php"; else dir_infra_php="/mnt/sei/src/infra_php"; fi | |
7 | -#ln -sf $dir_infra_php /var/www/html/ | |
8 | - | |
9 | -# Configura localização correta da infra_js | |
10 | -#if [ -d /mnt/sei/src/infra/infra_js ]; then dir_infra_js="/mnt/sei/src/infra/infra_js"; else dir_infra_js="/mnt/sei/src/infra_js"; fi | |
11 | -#ln -sf $dir_infra_js /var/www/html/ | |
12 | - | |
13 | -# Configura localização correta da infra_css | |
14 | -#if [ -d /mnt/sei/src/infra/infra_css ]; then dir_infra_css="/mnt/sei/src/infra/infra_css"; else dir_infra_css="/mnt/sei/src/infra_css"; fi | |
15 | -#ln -sf $dir_infra_css /var/www/html/ | |
16 | - | |
17 | 6 | # Atribuição dos parâmetros de configuração do SEI |
18 | 7 | if [ -f /opt/sei/config/ConfiguracaoSEI.php ] && [ ! -f /opt/sei/config/ConfiguracaoSEI.php~ ]; then |
19 | 8 | mv /opt/sei/config/ConfiguracaoSEI.php /opt/sei/config/ConfiguracaoSEI.php~ |
... | ... | @@ -32,25 +21,19 @@ if [ ! -f /opt/sip/config/ConfiguracaoSip.php ]; then |
32 | 21 | cp /ConfiguracaoSip.php /opt/sip/config/ConfiguracaoSip.php |
33 | 22 | fi |
34 | 23 | |
35 | -# Criação do diretório padrão de upload de arquivos | |
36 | -#SEI | |
37 | -chown -R www-data.www-data /opt/sei | |
38 | -chown -R www-data.www-data /opt/infra | |
39 | -chown -R www-data.www-data /opt/sip | |
24 | +# Ajustes de permissões diversos | |
40 | 25 | chmod +x /opt/sei/bin/wkhtmltopdf-amd64 |
41 | 26 | chmod -R 777 /opt/sei/temp |
42 | 27 | chmod -R 777 /opt/sip/temp |
43 | 28 | chmod -R 777 /var/sei/arquivos |
44 | 29 | |
45 | -# Inicialização do serviço de cache | |
46 | -#/etc/init.d/memcached start | |
47 | - | |
48 | 30 | # Inicialização das rotinas de agendamento |
49 | -service cron start | |
31 | +/etc/init.d/rsyslog start | |
32 | +/etc/init.d/crond start | |
50 | 33 | |
51 | 34 | # Inicialização do Gearman e Supervisor, componentes para integração com Processo Eletrônico Nacional |
52 | -gearmand & | |
53 | -service supervisor start | |
35 | +/etc/init.d/gearmand start | |
36 | +/etc/init.d/supervisord start | |
54 | 37 | |
55 | 38 | # Inicialização do servidor web |
56 | -apache2-foreground | |
39 | +/usr/sbin/httpd -DFOREGROUND | ... | ... |
sei/install.sh
... | ... | @@ -2,20 +2,27 @@ |
2 | 2 | |
3 | 3 | set -e |
4 | 4 | |
5 | -apt-get -y update | |
5 | +yum install -y epel-release && yum -y update | |
6 | 6 | |
7 | -apt-get -y install mysql-client wget unzip openjdk-7-jre bzip2 cron \ | |
8 | - php5-common php-pear php5-gd php5-intl php5-ldap php5-mysql php5-memcached php5-curl php5-json php5-dev php5-xdebug php5-mcrypt \ | |
9 | - php-calendar php-soap php-gettext php-pclzip php-file \ | |
10 | - libapache2-mod-php5filter | |
7 | +wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm | |
8 | +wget https://centos6.iuscommunity.org/ius-release.rpm | |
9 | +rpm -Uvh ius-release*.rpm | |
10 | + | |
11 | +yum -y update | |
12 | + | |
13 | +yum -y install httpd24u mysql56u memcached openssl wget curl unzip gcc java-1.7.0-openjdk libxml2 crontabs | |
14 | + | |
15 | +# Instalação do PHP e demais extenções necessárias para o projeto | |
16 | +yum -y install php56u php56u-common php56u-cli php56u-pear php56u-bcmath php56u-gd php56u-gmp php56u-imap php56u-intl php56u-ldap php56u-mbstring php56u-mysqli \ | |
17 | + php56u-odbc php56u-pdo php56u-pecl-apc php56u-pspell php56u-zlib php56u-snmp php56u-soap php56u-xml php56u-xmlrpc php56u-zts php56u-devel \ | |
18 | + php56u-pecl-apc-devel php56u-pecl-memcache php56u-calendar php56u-shmop php56u-intl php56u-mcrypt php56u-pecl-xdebug | |
11 | 19 | |
12 | 20 | # Instalação do componentes UploadProgress |
13 | -pecl install uploadprogress | |
14 | -echo "extension=uploadprogress.so" > /etc/php5/mods-available/uploadprogress.ini | |
21 | +pecl install uploadprogress && \ | |
22 | +echo "extension=uploadprogress.so" >> /etc/php.d/uploadprogress.ini | |
15 | 23 | |
16 | -# Instalação do Supervisor e Gearman para suporte à integração com o PEN | |
17 | -apt-get -y install supervisor | |
18 | -apt-get -y install gearman libgearman7 php5-gearman | |
24 | +# Instalação de componentes para teste do Barramento de Seriços do PEN | |
25 | +yum -y install supervisor gearmand libgearman libgearman-devel php56u-pecl-gearman | |
19 | 26 | |
20 | 27 | # Configuração de permissão do diretório de arquivos |
21 | 28 | mkdir -p /var/sei/arquivos && \ |
... | ... | @@ -23,9 +30,12 @@ chmod -R 777 /var/sei/arquivos |
23 | 30 | |
24 | 31 | # Configuração dos serviços de background do Cron |
25 | 32 | mkdir /var/log/sei |
26 | -echo "0 * * * * root /usr/bin/php -c /etc/php.ini /opt/sei/scripts/AgendamentoTarefaSEI.php 2>&1 >> /var/log/sei/agendamento_sei.log" >> /etc/cron.d/sei | |
27 | -echo "0 * * * * root /usr/bin/php -c /etc/php.ini /opt/sip/scripts/AgendamentoTarefaSip.php 2>&1 >> /var/log/sip/agendamento_sip.log" >> /etc/cron.d/sip | |
33 | +sed -i '/session required pam_loginuid.so/c\#session required pam_loginuid.so' /etc/pam.d/crond | |
34 | +echo "0 * * * * root /usr/bin/php -c /etc/php.ini /opt/sei/scripts/AgendamentoTarefaSEI.php 2>&1 >> /var/log/sei/agendamento_sei.log" > /etc/cron.d/sei | |
35 | +echo "0 * * * * root /usr/bin/php -c /etc/php.ini /opt/sip/scripts/AgendamentoTarefaSip.php 2>&1 >> /var/log/sip/agendamento_sip.log" > /etc/cron.d/sip | |
28 | 36 | echo "00 01 * * * root rm -rf /opt/sei/temp/*" >> /etc/cron.d/sei |
29 | 37 | echo "00 01 * * * root rm -rf /opt/sip/temp/*" >> /etc/cron.d/sip |
30 | 38 | |
39 | +yum -y clean all | |
40 | + | |
31 | 41 | exit 0 | ... | ... |
sei/supervisord.conf
1 | 1 | |
2 | +[supervisord] | |
3 | +http_port=/var/tmp/supervisor.sock ; (default is to run a UNIX domain socket server) | |
4 | +;http_port=127.0.0.1:9001 ; (alternately, ip_address:port specifies AF_INET) | |
5 | +;sockchmod=0700 ; AF_UNIX socketmode (AF_INET ignore, default 0700) | |
6 | +;sockchown=nobody.nogroup ; AF_UNIX socket uid.gid owner (AF_INET ignores) | |
7 | +;umask=022 ; (process file creation umask;default 022) | |
8 | +logfile=/var/log/supervisor/supervisord.log ; (main log file;default $CWD/supervisord.log) | |
9 | +logfile_maxbytes=50MB ; (max main logfile bytes b4 rotation;default 50MB) | |
10 | +logfile_backups=10 ; (num of main logfile rotation backups;default 10) | |
11 | +loglevel=info ; (logging level;default info; others: debug,warn) | |
12 | +pidfile=/var/run/supervisord.pid ; (supervisord pidfile;default supervisord.pid) | |
13 | +nodaemon=false ; (start in foreground if true;default false) | |
14 | +minfds=1024 ; (min. avail startup file descriptors;default 1024) | |
15 | +minprocs=200 ; (min. avail process descriptors;default 200) | |
16 | + | |
17 | +;nocleanup=true ; (don't clean up tempfiles at start;default false) | |
18 | +;http_username=user ; (default is no username (open system)) | |
19 | +;http_password=123 ; (default is no password (open system)) | |
20 | +;childlogdir=/tmp ; ('AUTO' child log dir, default $TEMP) | |
21 | +;user=chrism ; (default is current user, required if root) | |
22 | +;directory=/tmp ; (default is not to cd during start) | |
23 | +;environment=KEY=value ; (key value pairs to add to environment) | |
24 | + | |
25 | +[supervisorctl] | |
26 | +serverurl=unix:///var/tmp/supervisor.sock ; use a unix:// URL for a unix socket | |
27 | +;serverurl=http://127.0.0.1:9001 ; use an http:// url to specify an inet socket | |
28 | +;username=chris ; should be same as http_username if set | |
29 | +;password=123 ; should be same as http_password if set | |
30 | +;prompt=mysupervisor ; cmd line prompt (default "supervisor") | |
31 | + | |
32 | +; The below sample program section shows all possible program subsection values, | |
33 | +; create one or more 'real' program: sections to be able to control them under | |
34 | +; supervisor. | |
35 | + | |
36 | +;[program:theprogramname] | |
37 | +;command=/bin/cat ; the program (relative uses PATH, can take args) | |
38 | +;priority=999 ; the relative start priority (default 999) | |
39 | +;autostart=true ; start at supervisord start (default: true) | |
40 | +;autorestart=true ; retstart at unexpected quit (default: true) | |
41 | +;startsecs=10 ; number of secs prog must stay running (def. 10) | |
42 | +;startretries=3 ; max # of serial start failures (default 3) | |
43 | +;exitcodes=0,2 ; 'expected' exit codes for process (default 0,2) | |
44 | +;stopsignal=QUIT ; signal used to kill process (default TERM) | |
45 | +;stopwaitsecs=10 ; max num secs to wait before SIGKILL (default 10) | |
46 | +;user=chrism ; setuid to this UNIX account to run the program | |
47 | +;log_stdout=true ; if true, log program stdout (default true) | |
48 | +;log_stderr=true ; if true, log program stderr (def false) | |
49 | +;logfile=/var/log/cat.log ; child log path, use NONE for none; default AUTO | |
50 | +;logfile_maxbytes=1MB ; max # logfile bytes b4 rotation (default 50MB) | |
51 | +;logfile_backups=10 ; # of logfile backups (default 10) | |
52 | + | |
2 | 53 | [program:sei_processar_pendencias] |
3 | 54 | command=/usr/bin/php -c /etc/php.ini /var/www/html/sei/modulos/pen/rn/ProcessarPendenciasRN.php |
4 | 55 | numprocs=1 |
5 | 56 | directory=/var/www/html/sei/ |
6 | 57 | autostart=true |
7 | 58 | autorestart=true |
59 | +log_stderr=true | |
8 | 60 | stdout_logfile=/tmp/sei.log |
9 | 61 | stdout_logfile_maxbytes=1MB |
10 | 62 | stderr_logfile=/tmp/sei_error.log |
... | ... | @@ -16,6 +68,7 @@ numprocs=1 |
16 | 68 | directory=/var/www/html/sei/ |
17 | 69 | autostart=true |
18 | 70 | autorestart=true |
71 | +log_stderr=true | |
19 | 72 | stdout_logfile=/tmp/sei.log |
20 | 73 | stdout_logfile_maxbytes=1MB |
21 | 74 | stderr_logfile=/tmp/sei_error.log | ... | ... |
solr/Dockerfile
... | ... | @@ -2,17 +2,16 @@ |
2 | 2 | # Dockerfile de construção do container Solr utilizado pelo SEI e pelo SIP # |
3 | 3 | ############################################################################ |
4 | 4 | |
5 | -# Definição da imagem de base para o CentOS 6.X | |
5 | +# Definição da imagem de base para o OpenJDK 8 | |
6 | 6 | FROM openjdk:8 |
7 | 7 | |
8 | 8 | # Autor e mantenedor do container |
9 | 9 | MAINTAINER PEN - Processo Eletrônico Nacional |
10 | 10 | |
11 | -# Definição do terminal a ser utilizado | |
12 | -ENV TERM xterm | |
13 | - | |
14 | 11 | ################## INICIO DA INSTALACAO ###################### |
15 | 12 | |
13 | +ENV TERM xterm | |
14 | + | |
16 | 15 | # Obtenção do pacote de instalação do Solr 4.0 |
17 | 16 | COPY install.sh /install.sh |
18 | 17 | COPY solr-6.1.0.tgz /tmp/ | ... | ... |