Histórico da Página
...
O objetivo desta página é demonstrar como montar um projeto docker com um webserver tomcat utilizando o produto Datasul. Esta montagem será feita com base em arquivos de configuração de um projeto existente no servidor jv-fwk-dev02 (servidor de ambientes docker Datasul e Logix).
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
...
sobrescrever as propriedades do produto DATASUL utilizadas em um ambiente com Tomcat.
...
Context.xml
Por meio do arquivo context.xml é possível sobrescrever as propriedades do produto DATASUL, o arquivo fica localizado na pasta conf onde foi instalado o Tomcat. Para realizar o procedimento basta adicionar um nova Environment.
Exemplo de propriedade alterando sobrescrevendo a cor do menu:
<Environment name="totvs.menu.html.color" value="#09ddea" |
---|
...
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
}
...
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 |
---|
...
type="java.lang.String"/> |
---|
Informações |
---|
<Environment name="totvs.config.server.host" value="localhost" type="java.lang.String"/>
<Environment name="totvs.config.server.port" value="8780" type="java.lang.String"/>
<Environment name="totvs.config.server.webport" value="8280" type=" Todos as propriedades são do tipo java.lang.String "/> |
Objetivo das propriedades informadas:
- totvs.appserver: Faz o uso do appserver da rede do ambiente gales8280
- totvs.license.ambient.type: Configuração para utilizar o license em modo demonstração
- totvs.config.server.host: Informa que o ambiente será localhost (Alterar o valor localhost para o IP da VM para quem utilizar o Docker Toolbox)
- totvs.config.server.port: Informa que a porta utilizada para comunicação do DI será 8780 (É a porta informada no arquivo .env (DI_PORT)).
- totvs.config.server.webport: Informa que a porta utilizada no tomcat será 8280 (É a porta informada no arquivo .env (WEB_PORT)).
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...
...
Lista de propriedades que podem ser utilizadas
...
- 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
...