Commit 57a9ab8ca5140d2d00560af1643eae12276fa5b5

Authored by Guilherme Andrade Del Cantoni
2 parents bb9e13f2 cb9fc6af

Merge para configuração do XDebug

Vagrantfile
1   -# -*- mode: ruby -*-
2   -# vi: set ft=ruby :
3   -require "yaml"
4   -
5   -# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
6   -VAGRANTFILE_API_VERSION = "2"
7   -
8   -# Parâmetros de customização do ambiente de desenvolvimento
9   -params = if File.exists?("Vagrantfile.conf") then YAML::load_file("Vagrantfile.conf") else {} end
10   -params_source_dir = params["source_dir"] || "../sei"
11   -params_script_sei = params["script_sei"] || "../sei-db-ref-executivo/sei_2_6_0_BD_Ref_Exec.sql"
12   -params_script_sip = params["script_sip"] || "../sei-db-ref-executivo/sip_2_6_0_BD_Ref_Exec.sql"
13   -params_memoria_vm = params["memoria_vm"] || "2048"
14   -#params_repo_arquivos = params["repositorio_arquivos"] || "../sei-arquivos"
15   -
16   -Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
17   - # All Vagrant configuration is done here. The most common configuration
18   - # options are documented and commented below. For a complete reference,
19   - # please see the online documentation at vagrantup.com.
20   -
21   - # Atribuição do hostname da máquina virtual
22   - config.vm.hostname = "sei-vagrant"
23   -
24   - # Every Vagrant virtual environment requires a box to build off of.
25   - # config.vm.box_download_checksum = "76a2a61de2d89f6cfd4d795e57cc4406"
26   - # config.vm.box_download_checksum_type = "md5"
27   - # config.vm.box = "processoeletronico/centos-6.6"
28   - # config.vm.box = "centos/7"
29   - config.vm.box = "ubuntu/trusty64"
30   -
31   - # Disable automatic box update checking. If you disable this, then
32   - # boxes will only be checked for updates when the user runs
33   - # `vagrant box outdated`. This is not recommended.
34   - # config.vm.box_check_update = true
35   -
36   - # Configuração do redirecionamento entre Máquina Virtual e Host
37   - # Necessário permissões de root para utilizar a porta 80 (> 1024)
38   - config.vm.network :forwarded_port, guest: 80, host: 80 # SIP e SEI (Apache)
39   - config.vm.network :forwarded_port, guest: 3306, host: 3306 # Banco de Dados (Mysql)
40   - config.vm.network :forwarded_port, guest: 8080, host: 8080 # Jod Converter (Tomcat)
41   - config.vm.network :forwarded_port, guest: 8983, host: 8983 # Solr Indexer (Jetty)
42   -
43   - # Diretórios compartilhados com a durante a execução
44   - config.vm.synced_folder ".", "/mnt/sei/ops"
45   - config.vm.synced_folder params_source_dir, "/mnt/sei/src", mount_options: ["dmode=777", "fmode=777"]
46   - #config.vm.synced_folder params_repo_arquivos, "/mnt/sei/arquivos", create: true, mount_options: ["dmode=777", "fmode=777"]
47   - config.vm.synced_folder File.dirname(params_script_sei), "/mnt/sei/db_sei"
48   - config.vm.synced_folder File.dirname(params_script_sip), "/mnt/sei/db_sip"
49   -
50   - # Provider-specific configuration so you can fine-tune various
51   - # backing providers for Vagrant. These expose provider-specific options.
52   - config.vm.provider "virtualbox" do |vb|
53   - # Don't boot with headless mode
54   - # vb.gui = true
55   - # Use VBoxManage to customize the VM. For example to change memory:
56   - vb.customize ["modifyvm", :id, "--memory", params_memoria_vm, "--usb", "off", "--audio", "none"]
57   - end
58   -
59   - config.vm.provision "shell",
60   - args: [File.basename(params_script_sei), File.basename(params_script_sip)],
61   - inline: <<SCRIPT
62   - mkdir -p /mnt/sei/ops/mysql/.tmp/
63   - cp /mnt/sei/db_sei/$1 /mnt/sei/ops/mysql/.tmp/sei_mysql.sql
64   - cp /mnt/sei/db_sip/$2 /mnt/sei/ops/mysql/.tmp/sip_mysql.sql
65   - cp /mnt/sei/ops/sei/ConfiguracaoSEI.php /mnt/sei/src/sei/ConfiguracaoSEI.php
66   - cp /mnt/sei/ops/sei/ConfiguracaoSip.php /mnt/sei/src/sip/ConfiguracaoSip.php
67   -SCRIPT
68   -
69   - # Provisionamento da Máquina Virtual responsável por manter os containers do Docker
70   - config.vm.provision "docker" do |docker|
71   -
72   - # Constrói imagens dos containers utilizados no provicionamento
73   - docker.build_image "/mnt/sei/ops/solr", args: "-t 'processoeletronico/solr'"
74   - docker.build_image "/mnt/sei/ops/jod", args: "-t 'processoeletronico/jod'"
75   - docker.build_image "/mnt/sei/ops/mysql", args: "-t 'processoeletronico/mysql'"
76   - docker.build_image "/mnt/sei/ops/sei", args: "-t 'processoeletronico/sei'"
77   -
78   - # Provisiona docker containers na máquina virtual
79   - # docker run -it --name sei_data -v /mnt/sei/arquivos:/var/sei/arquivos centos:centos6 true
80   - # docker.run "sei_data", image: "centos:centos6",
81   - # args: "-v /mnt/sei/arquivos:/var/sei/arquivos",
82   - # cmd: "true"
83   -
84   - # docker run -d --name sei_db -p 3306:3306 processoeletronico/mysql:latest
85   - docker.run "sei_db", image: "processoeletronico/mysql:latest",
86   - daemonize: true,
87   - args: "-p 3306:3306"
88   -
89   - # docker run -d --name sei_solr -p 8983:8983 -v /mnt/sei/src/sei/solr:/mnt/sei/index processoeletronico/solr:latest
90   - docker.run "sei_solr", image: "processoeletronico/solr:latest",
91   - daemonize: true,
92   - args: "-p 8983:8983 -v /mnt/sei/src/sei/solr:/mnt/sei/index"
93   -
94   - # docker run -d --name sei_jod -p 8080:8080 processoeletronico/jod:latest
95   - docker.run "sei_jod", image: "processoeletronico/jod:latest",
96   - daemonize: true,
97   - args: "-p 8080:8080"
98   -
99   - # docker run -d --name sei_www -p 80:80 --link sei_solr:solr --link sei_db:db --link sei_jod:jod -v /mnt/sei/src:/mnt/sei/src processoeletronico/sei:latest
100   - docker.run "sei_www", image: "processoeletronico/sei:latest",
101   - daemonize: true,
102   - args: "-p 80:80 --link sei_db:db --link sei_solr:solr --link sei_jod:jod -v /mnt/sei/src:/mnt/sei/src"
103   - end
104   -
105   - # Limpeza de arquivos temporários criados durante o provisionamento do sistema
106   - config.vm.provision "shell", inline: "rm -rf /mnt/sei/ops/mysql/.tmp"
107   -
108   - # Inicialização dos containers em caso de reinicialização da máquina host
109   - config.vm.provision "shell", run: "always", inline: "docker restart sei_solr && docker restart sei_jod && docker restart sei_db && docker restart sei_www"
110   -end
  1 +# -*- mode: ruby -*-
  2 +# vi: set ft=ruby :
  3 +require "yaml"
  4 +
  5 +# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
  6 +VAGRANTFILE_API_VERSION = "2"
  7 +
  8 +# Parâmetros de customização do ambiente de desenvolvimento
  9 +params = if File.exists?("Vagrantfile.conf") then YAML::load_file("Vagrantfile.conf") else {} end
  10 +params_source_dir = params["source_dir"] || "../sei"
  11 +params_script_sei = params["script_sei"] || "../sei-db-ref-executivo/sei_2_6_0_BD_Ref_Exec.sql"
  12 +params_script_sip = params["script_sip"] || "../sei-db-ref-executivo/sip_2_6_0_BD_Ref_Exec.sql"
  13 +params_memoria_vm = params["memoria_vm"] || "1024"
  14 +#params_repo_arquivos = params["repositorio_arquivos"] || "../sei-arquivos"
  15 +
  16 +Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
  17 + # All Vagrant configuration is done here. The most common configuration
  18 + # options are documented and commented below. For a complete reference,
  19 + # please see the online documentation at vagrantup.com.
  20 +
  21 + # Atribuição do hostname da máquina virtual
  22 + config.vm.hostname = "sei-vagrant"
  23 +
  24 + # Every Vagrant virtual environment requires a box to build off of.
  25 + # config.vm.box_download_checksum = "76a2a61de2d89f6cfd4d795e57cc4406"
  26 + # config.vm.box_download_checksum_type = "md5"
  27 + # config.vm.box = "minimum/centos-7-docker"
  28 + # config.vm.box = "centos/7"
  29 + config.vm.box = "ubuntu/trusty64"
  30 +
  31 + # Disable automatic box update checking. If you disable this, then
  32 + # boxes will only be checked for updates when the user runs
  33 + # `vagrant box outdated`. This is not recommended.
  34 + # config.vm.box_check_update = true
  35 +
  36 + # Configuração do redirecionamento entre Máquina Virtual e Host
  37 + # Necessário permissões de root para utilizar a porta 80 (> 1024)
  38 + config.vm.network :forwarded_port, guest: 80, host: 80 # SIP e SEI (Apache)
  39 + config.vm.network :forwarded_port, guest: 3306, host: 3306 # Banco de Dados (Mysql)
  40 + config.vm.network :forwarded_port, guest: 8080, host: 8080 # Jod Converter (Tomcat)
  41 + config.vm.network :forwarded_port, guest: 8983, host: 8983 # Solr Indexer (Jetty)
  42 +
  43 + # Diretórios compartilhados com a durante a execução
  44 + config.vm.synced_folder ".", "/mnt/sei/ops"
  45 + config.vm.synced_folder params_source_dir, "/mnt/sei/src", mount_options: ["dmode=777", "fmode=777"]
  46 + config.vm.synced_folder File.dirname(params_script_sei), "/mnt/sei/db_sei"
  47 + config.vm.synced_folder File.dirname(params_script_sip), "/mnt/sei/db_sip"
  48 +
  49 + # Provider-specific configuration so you can fine-tune various
  50 + # backing providers for Vagrant. These expose provider-specific options.
  51 + config.vm.provider "virtualbox" do |vb|
  52 + # Don't boot with headless mode
  53 + # vb.gui = true
  54 + # Use VBoxManage to customize the VM. For example to change memory:
  55 + vb.customize ["modifyvm", :id, "--memory", params_memoria_vm, "--usb", "off", "--audio", "none"]
  56 + end
  57 +
  58 + config.vm.provision "shell",
  59 + args: [File.basename(params_script_sei), File.basename(params_script_sip)],
  60 + inline: <<SCRIPT
  61 + mkdir -p /mnt/sei/ops/mysql/.tmp/
  62 + cp /mnt/sei/db_sei/$1 /mnt/sei/ops/mysql/.tmp/sei_mysql.sql
  63 + cp /mnt/sei/db_sip/$2 /mnt/sei/ops/mysql/.tmp/sip_mysql.sql
  64 + cp /mnt/sei/ops/sei/ConfiguracaoSEI.php /mnt/sei/src/sei/ConfiguracaoSEI.php
  65 + cp /mnt/sei/ops/sei/ConfiguracaoSip.php /mnt/sei/src/sip/ConfiguracaoSip.php
  66 +SCRIPT
  67 +
  68 + # Provisionamento da Máquina Virtual responsável por manter os containers do Docker
  69 + config.vm.provision "docker" do |docker|
  70 +
  71 + # Constrói imagens dos containers utilizados no provicionamento
  72 + docker.build_image "/mnt/sei/ops/solr", args: "-t 'processoeletronico/solr'"
  73 + docker.build_image "/mnt/sei/ops/mysql", args: "-t 'processoeletronico/mysql'"
  74 + docker.build_image "/mnt/sei/ops/sei", args: "-t 'processoeletronico/sei'"
  75 + docker.build_image "/mnt/sei/ops/jod", args: "-t 'processoeletronico/jod'"
  76 +
  77 + # Provisiona docker containers na máquina virtual
  78 + # docker run -it --name sei_data -v /mnt/sei/arquivos:/var/sei/arquivos centos:centos6 true
  79 + # docker.run "sei_data", image: "centos:centos6",
  80 + # args: "-v /mnt/sei/arquivos:/var/sei/arquivos",
  81 + # cmd: "true"
  82 +
  83 + # docker run -d --name sei_db -p 3306:3306 processoeletronico/mysql:latest
  84 + docker.run "sei_db", image: "processoeletronico/mysql:latest",
  85 + daemonize: true,
  86 + args: "-p 3306:3306"
  87 +
  88 + # docker run -d --name sei_solr -p 8983:8983 -v /mnt/sei/src/sei/solr:/mnt/sei/index processoeletronico/solr:latest
  89 + docker.run "sei_solr", image: "processoeletronico/solr:latest",
  90 + daemonize: true,
  91 + args: "-p 8983:8983 -v /mnt/sei/src/sei/solr:/mnt/sei/index"
  92 +
  93 + # docker run -d --name sei_jod -p 8080:8080 processoeletronico/jod:latest
  94 + docker.run "sei_jod", image: "processoeletronico/jod:latest",
  95 + daemonize: true,
  96 + args: "-p 8080:8080"
  97 +
  98 + # docker run -d --name sei_www -p 80:80 --link sei_solr:solr --link sei_db:db --link sei_jod:jod -v /mnt/sei/src:/mnt/sei/src processoeletronico/sei:latest
  99 + docker.run "sei_www", image: "processoeletronico/sei:latest",
  100 + daemonize: true,
  101 + args: "-p 80:80 --link sei_db:db --link sei_solr:solr --link sei_jod:jod -v /mnt/sei/src:/mnt/sei/src"
  102 + end
  103 +
  104 + # Limpeza de arquivos temporários criados durante o provisionamento do sistema
  105 + config.vm.provision "shell", inline: "rm -rf /mnt/sei/ops/mysql/.tmp"
  106 +
  107 + # Inicialização dos containers em caso de reinicialização da máquina host
  108 + # A inicialização é realizada de forma sequencial para evitar conflito no mapeamento de volumes no Docker
  109 + config.vm.provision "shell", run: "always", inline: "docker restart sei_solr && docker restart sei_jod && docker restart sei_db && docker restart sei_www"
  110 +end
... ...
Vagrantfile_Distrib
1   -# -*- mode: ruby -*-
2   -# vi: set ft=ruby :
3   -
4   -# All Vagrant configuration is done below. The "2" in Vagrant.configure
5   -# configures the configuration version (we support older styles for
6   -# backwards compatibility). Please don't change it unless you know what
7   -# you're doing.
8   -Vagrant.configure(2) do |config|
9   -
10   - # Box do vagrant contendo o ambiente de desenvolvimento do SEI
11   - config.vm.box = "processoeletronico/sei-2.5.2"
12   -
13   - # Usuários ssh de acesso à máquina virtual
14   - config.ssh.username = "vagrant"
15   - config.ssh.password = "vagrant"
16   -
17   - # Configuração do diretório local onde deverá estar disponibilizado os códigos-fontes do SEI (sei, sip, infra_php, infra_css, infra_js)
18   - config.vm.synced_folder ".", "/mnt/sei/src", mount_options: ["dmode=777", "fmode=777"]
19   -
20   - # Configuração do redirecionamento entre Máquina Virtual e Host
21   - # Necessário permissões de root para utilizar a porta 80 (> 1024)
22   - config.vm.network :forwarded_port, guest: 80, host: 80 # SIP e SEI (Apache)
23   - config.vm.network :forwarded_port, guest: 3306, host: 3306 # Banco de Dados (Mysql)
24   - config.vm.network :forwarded_port, guest: 8080, host: 8080 # Jod Converter (Tomcat)
25   - config.vm.network :forwarded_port, guest: 8983, host: 8983 # Solr Indexer (Jetty)
26   -
27   - # Inicialização dos containers em caso de reinicialização da máquina host
28   - config.vm.provision "shell", run: "always", inline: "docker restart sei_solr && docker restart sei_jod && docker restart sei_db && docker restart sei_www"
29   -end
  1 +# -*- mode: ruby -*-
  2 +# vi: set ft=ruby :
  3 +
  4 +# All Vagrant configuration is done below. The "2" in Vagrant.configure
  5 +# configures the configuration version (we support older styles for
  6 +# backwards compatibility). Please don't change it unless you know what
  7 +# you're doing.
  8 +Vagrant.configure(2) do |config|
  9 +
  10 + # Box do vagrant contendo o ambiente de desenvolvimento do SEI
  11 + config.vm.box = "processoeletronico/sei-2.6.0"
  12 +
  13 + # Usuários ssh de acesso à máquina virtual
  14 + config.ssh.username = "vagrant"
  15 + config.ssh.password = "vagrant"
  16 +
  17 + # Configuração do diretório local onde deverá estar disponibilizado os códigos-fontes do SEI (sei, sip, infra_php, infra_css, infra_js)
  18 + config.vm.synced_folder ".", "/mnt/sei/src", mount_options: ["dmode=777", "fmode=777"]
  19 +
  20 + # Configuração do redirecionamento entre Máquina Virtual e Host
  21 + # Necessário permissões de root para utilizar a porta 80 (> 1024)
  22 + config.vm.network :forwarded_port, guest: 80, host: 80 # SIP e SEI (Apache)
  23 + config.vm.network :forwarded_port, guest: 3306, host: 3306 # Banco de Dados (Mysql)
  24 + config.vm.network :forwarded_port, guest: 8080, host: 8080 # Jod Converter (Tomcat)
  25 + config.vm.network :forwarded_port, guest: 8983, host: 8983 # Solr Indexer (Jetty)
  26 +
  27 + # Inicialização dos containers em caso de reinicialização da máquina host
  28 + config.vm.provision "shell", run: "always", inline: "docker restart sei_solr && docker restart sei_jod && docker restart sei_db && docker restart sei_www"
  29 +end
... ...
jod/Dockerfile
... ... @@ -20,7 +20,6 @@ RUN yum -y update &amp;&amp; \
20 20 yum install -y java-1.7.0-openjdk-devel wget unzip dos2unix libreoffice libreoffice-headless && \
21 21 yum -y clean all
22 22  
23   -# TODO: Utilizar wget para obter o pacote da web, removendo-o posteriormente para otimizar o tamanho da imagem
24 23 # Instalação da api de serviços de conversão de documentos
25 24 ADD jodconverter-tomcat-2.2.2.zip /opt/
26 25 RUN unzip /opt/jodconverter-tomcat-2.2.2.zip -d /opt && rm /opt/jodconverter-tomcat-2.2.2.zip
... ...
jod/entrypoint.sh
... ... @@ -7,4 +7,4 @@ echo &quot;Iniciando o serviço LibreOffice headless ...&quot;
7 7 $SOFFICE_PATH --headless --nologo --nofirststartwizard --accept="socket,host=127.0.0.1,port=8100;urp" & > /dev/null 2>&1
8 8  
9 9 echo "Iniciando o serviço Tomcat 6 ..."
10   -$TOMCAT6_PATH run
11 10 \ No newline at end of file
  11 +$TOMCAT6_PATH run
... ...
solr/Dockerfile
... ... @@ -23,7 +23,6 @@ RUN yum update -y &amp;&amp; \
23 23 # Criação de usuário de execução do serviço
24 24 RUN useradd solr
25 25  
26   -# TODO: Utilizar wget para obter o pacote da web, removendo-o posteriormente para otimizar o tamanho da imagem
27 26 # Obtenção do pacote de instalação do Solr 4.0
28 27 ADD apache-solr-4.0.0.tgz /opt/
29 28  
... ...