Histórico da Página
Índice | ||
---|---|---|
|
Objetivo
O objetivo
...
deste documento é demonstrar como
...
Este projeto de ambiente local utiliza o servidor de aplicação progress e banco de dados da rede disponibilizado para o ambiente http:\\gales:8280\menu-html
Passo a Passo
Passo 1 - Criar uma pasta com o nome treinamento no diretório de usuários
...
Aviso |
---|
|
Passo 2 - Criar novas pastas dentro da pasta treinamento
...
Passo 3 - Acessar o diretório do servidor jv-fwk-dev02
...
Passo 4 - Copiar arquivos do servidor jv-fwk-dev02
...
Passo 5 - Edição do arquivo tomcat.sh.
Nesta etapa devemos remover a função wait_for_appserver. Ela não será necessária para este projeto.
...
Remover do código a função:
...
function wait_for_appserver {
echo Waiting for AppServer...
while [ ! -s /usr/wrk/datasul-1217-progress-8080.server.000001.log ]
do
sleep 2
done
sleep 5
}
...
configurar o arquivo context.xml do Tomcat conforme as necessidades do ambiente
As configurações são armazenadas no banco de dados e criamos a figura do agrupador de propriedades para tratar as propriedades que serão distintas a cada Tomcat utilizado.
Painel | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
Se não existe a necessidade de propriedades específicas por servidor Tomcat usando o mesmo banco de dados as únicas configurações necessárias são:
|
Painel | ||||
---|---|---|---|---|
| ||||
Abaixo exemplo do arquivo:
|
...
function start_tomcat {
echo Starting Tomcat...
/usr/local/tomcat/bin/startup.sh
}
function stop_tomcat {
echo Stopping Tomcat...
/usr/local/tomcat/bin/shutdown.sh
exit 0;
}
start_tomcat
#!/usr/bin/env bash
echo Running...
trap stop_tomcat SIGTERM
while true; do
sleep 1;
done
Passo 6 - Edição do arquivo .env
...
PROJECT_PATH=C:\Users\<SEU USUARIO>\treinamento
PROJECT=tomcat-local
WEB_PORT=8280
DI_PORT=8780
TOMCAT_VERSION=9.0.0.M17-jre8
Passo 7 - Edição do arquivo docker-compose.yml
Neste projeto utilizamos apenas o serviço webserver, desta maneira não é necessário configurar os serviços database e appserver.
A área de volumes não será necessária para este exemplo e também será removida.
...
Bloco de código | ||
---|---|---|
| ||
# Configuracoes Gerais do Ambiente
#
# Projeto tomcat-local container tomcat
# com o produto Datasul (Novo Framework)
#
# 1. APPSERVER:
# 1.1 Appserver da rede - ambiente Gales 8280
# 2. BANCO DE DADOS:
# 1.1 Banco de dados da rede - ambiente Gales 8280
#
version: "3"
services:
webserver:
image: tomcat:${TOMCAT_VERSION}
container_name: ${PROJECT}-webserver
ports:
- "${WEB_PORT}:8080"
- "${DI_PORT}:${DI_PORT}"
volumes:
- ${PROJECT_PATH}/${PROJECT}/scripts:/scripts
- ${PROJECT_PATH}/${PROJECT}/scripts/webserver/context.xml:/usr/local/tomcat/conf/context.xml
- ${PROJECT_PATH}/${PROJECT}/scripts/webserver/server.xml:/usr/local/tomcat/conf/server.xml
- ${PROJECT_PATH}/${PROJECT}/scripts/webserver/catalina.properties:/usr/local/tomcat/conf/catalina.properties
- ${PROJECT_PATH}/${PROJECT}/scripts/webserver/logging.properties:/usr/local/tomcat/conf/logging.properties
- ${PROJECT_PATH}/${PROJECT}/scripts/webserver/webapps:/usr/local/tomcat/webapps
- ${PROJECT_PATH}/${PROJECT}/temp/tomcat:/usr/local/tomcat/logs
environment:
TZ: "Brazil/East"
command: /bin/bash /scripts/webserver/tomcat.sh
|
Passo 8 - Copiar os arquivos web
- 1- Copiar (Não recortar) todo o conteúdo do diretório \\JV-FWK-DEV02\users\treinamento\webapps para o diretório C:\Users\<SEU USUÁRIO>\treinamento\tomcat-local\scripts\webserver\webapps
Passo 9 - Editar arquivo context.xml
...
language | text |
---|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
Agrupadores de Propriedades
A partir da versão 12.1.28 do produto DATASUL, disponibiliza a funcionalidade de agrupadores de propriedades, que visa facilitar a criação, gerenciamento e redução dos recursos necessários para os ambientes.
O agrupador permite que um mesmo banco de dados de foundation armazene as configurações dos diversos ambientes Tomcat.
Para utilizar o agrupador de propriedades de inserir no arquivo de configuração context.xml
a seguinte configuração:
<Environment name="totvs. |
---|
...
envprop. |
---|
...
group" |
---|
...
value=" |
---|
...
Servidor_teste" |
---|
...
type="java.lang.String" /> |
---|
Objetivo das propriedades informadas:
...
Em que Servidor_teste é o seu agrupador, pode-se utilizar o nome que melhor irá identificar o uso desse servidor Tomcat.
Quando estiver usando esse servidor toda a configuração de foundation feita nele não se propaga aos outros servidores que usam o mesmo banco de dados.
Para saber que está usando um agrupador no ambiente foi colocado o nome do agrupador na barra de status, vejam na imagem o destaque em vermelho.
No exemplo foi alterada a cor de fundo do menu para verde e essa configuração só será utilizada nos servidores com agrupador Servidor_teste.
Se no mesmo banco de dados estiverem configurados diversos servidores sem o agrupador quando alterar uma configuração, da cor por exemplo, todos os servidores que não tem o agrupador serão afetados, os que tem agrupador não.
Caso precise desfazer as configurações específicas do agrupador posso fazer isso através das propriedades de ambiente descritas nesse documento CFG - Ambiente .
Arquitetura
É possível utilizar várias configurações de ambiente com mais de um Tomcat e Appserver por conjunto de bancos.
Neste exemplo, o ambiente está distribuído entre Tomcats, Appservers e conjunto da bancos diferentes para demonstrar as possibilidades:
...
Passo 10 - Docker-compose
...
Creating tomcat-local-webserver ... done
Attaching to tomcat-local-webserver
tomcat-local-webserver | Starting Tomcat...
tomcat-local-webserver | Tomcat started.
tomcat-local-webserver | Running...
...
- Acessar o endereço http:\\<IP-VM>:8280\totvs-menu
- Acessar com usuário super e senha super@123
...
- Acessar o diretório do projeto C:\Users\<SEU USUÁRIO>\treinamento\tomcat-local utilizando o CMD ou Docker client
- Executar o comando docker-compose down
...