Este documento objetiva detalhar processo de instalação da aplicação Gerenciador de Integração através do Docker.
Pré-requisitos
- Solicitação de acessos para o Repositório Linx de imagens docker hospedado no AZURE
- Docker (https://www.docker.com/) instalado no servidor onde será feito deploy da imagem da aplicação
Requisitos
Para conseguir dar prosseguimento no processo de configuração do Gerenciador de Integração é imprescindível que na maquina onde esse processo será executado tenha a aplicação Docker instalado, caso não tenha essa aplicação instalada na maquina acesse os seguintes documentos:
- Instalação para SO Windows Clique Aqui !
- Instalação para SO Linux (distro UBUNTU 20.04.3 LTS) Clique Aqui !
- Instalação para SO Mac Clique Aqui !
Após instalação do Docker, realizar processo da habilitação rede interna do Conteiner.
TERMINALdocker network create netlinx
Etapa 1 - Preparação ambiente para instalação da imagem da aplicação
Esta etapa objetiva preparar um diretório no servidor onde será instalada e executada a imagem do Gerenciador de Integração.
Atenção
Caso já tenha havido processo de preparação de ambiente para o servidor, os passos abaixo podem ser ignorados. Se as recomendações desta foram seguidas, basta verificar se existe diretório com nomenclatura container-linx no diretório /home (caso, Linux) ou na unidade "C:", caso Windows.
Passo a passo | Detalhamento e exemplos |
---|---|
1 - Criação de diretório Sugerimos a criação de um diretório exclusivo para receber a imagem da aplicação. Dessa forma, sugerimos que seja criado diretório containers-linx, no /home (caso, sistema operacional linux) ou na unidade "c:", (caso Windows). Na coluna ao lado estão os exemplos de comandos a serem executados o sistema operacional linux | TERMINAL LINUX user@group /home: mkdir containers-linx TERMINAL WINDOWS C:\: mkdir containers-linx |
2 - Concessão de Permissões Conceder permissão completa para diretório acima definido, a fim de habilitar as ações de leitura, escrita e execução da aplicação. Na coluna ao lado está detalhado comando CHMOD. | TERMINAL user@group /home: chmod 777 -R containers-linx INFO Em geral, no sistema operacional Windows, esse tipo de permissão não é necessária. Todo caso, caso haja alguma restrição no processo de instalação, deve ser verificado com o administrador do sistema. |
Etapa 2 - Download da Imagem do Gerenciador de Integração
Esta etapa objetiva explicar processo de download da release do Gerenciador de Integração que está disponível no RCA Azure Linx.
Atenção
Para a sequencia dessa etapa é mandatório que usuário tenha o acesso mencionado na seção pré-requisitos.
Passo a passo | Detalhamento e exemplos |
---|---|
1- Iniciar um novo TERMINAL e executar comando para processo de autenticação no Azure. | TERMINAL LINUX user@group /home/containers-linx: docker login acrbigretail.azurecr.io TERMINAL WINDOWS C:\containers-linx : docker login acrbigretail.azurecr.io |
2 - Realizar download da imagem da aplicação. Neste passo, deve ser informada a versão do release desejado no formato XX.XX.XX. No exemplo ao lado está sendo considerada a versão 01.10.00 do Gerenciador de Integração web . Após execução do comando, download será iniciado. | TERMINAL LINUX user@group /home/containers-linx: docker pull acrbigretail.azurecr.io/gerenciador-integracao-web:<versao> // substitua o <versao> pela numeração correta EX: 01.10.00 TERMINAL WINDOWS C:\containers-linx : docker pull acrbigretail.azurecr.io/gerenciador-integracao-web:<versao> // substitua o <versao> pela numeração correta EX: 01.10.00 TERMINAL WINDOWS root@aa-VirtualBox /home: docker pull acrbigretail.azurecr.io/gerenciador-integracao-web::1.10.0 1.10.0: Pulling from gerenciador-integracao-web 75f829a71a1c: Already exists 7b11f246b3d3: Already exists b765648c2a58: Already exists 506aff4a9c5a: Already exists b5b922707580: Already exists d2bb040705ab: Pull complete d805ec4d9dd7: Pull complete 42cbf59b928c: Pull complete 797a05ad3155: Pull complete d48bd8701faf: Pull complete 887c49218327: Pull complete 1956f87a564b: Pull complete a80382e3b72b: Pull complete 813a0eb45864: Pull complete 51bee593eaf0: Pull complete 6506e0465315: Pull complete 92b3c4968071: Pull complete Digest: sha256:013aafbcd3ad244f79c105f301d70278d78123ef4dd94e54e2b3ea03b2bbcc58 Status: Downloaded newer image for acrbigretail.azurecr.io/gerenciador-integracao-web::1.10.0 acrbigretail.azurecr.io/gerenciador-integracao-web::1.10.0 |
Etapa 3 -Configurando o Container (Docker) para Execução
Nesse passo vamos detalhar processo de configuração para execução do container (Docker) contendo a aplicação do Gerenciador de Integração.
Principal objetivo é detalhar as instruções para prover as configurações necessárias para funcionamento da aplicação como:
- Apontamentos e credenciais de banco de dados
- Definições de tunning de memória da JVM
- Configurações de volume externo ao contêiner onde haverá uma visibilidade para informações necessárias do cotidiano como: acesso aos logs e arquivos de configuração da aplicação.
INFORMAÇÕES | EXEMPLO | |||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1- Criação de diretório para armazenar as configurações Sugerimos a criação do diretório container-gerenciador-integracao-web, no /home/conatiner-linx (caso, sistema operacional linux) ou na unidade "c:/container-linx", (caso Windows). Atenção Caso tenha sido escolhido um outro diretório na Etapa 01 deste documento, a instrução acima deve considerar este diretório como a raiz para criação do container-gerenciador-integracao-web. | TERMINAL LINUX user@group /home/containers-linx: mkdir container-gerenciador-integracao-web TERMINAL WINDOWS C:\containers-linx : mkdir container-gerenciador-integracao-web | |||||||||||||||||||||||||||||||||
2 - Concessão de Permissões Conceder permissão completa para diretório completo a fim de habilitar as ações de leitura, escrita e execução da aplicação. Na coluna ao lado está detalhado comando CHMOD. | TERMINAL user@group /home/containers-linx: chmod 777 -R container-gerenciador-integracao-web INFO Em geral, no sistema operacional Windows, esse tipo de permissão não é necessária. Todo caso, caso haja alguma restrição no processo de instalação, deve ser verificado com o administrador do sistema. | |||||||||||||||||||||||||||||||||
3- Definir as configurações por linha de comando Uma vez realizados os processos acima, deve ser executado comando abaixo para configuração da base de dados , necessário para funcionamento do Gerenciador de Integração.. docker run --name gerenciador-integracao -dit --network=netlinx --restart=unless-stopped -p 8454:8443 -p 8050:8080 -p 3171:3171 -e DB_CONNINFO=<string conexao banco>-e DB_USER=<usuario banco> -e DB_PASS=<password usuario banco> -e DB_DRIVER=oracle -e MEM_MS=512m -e MEM_MX=512m -e MEM_MAX_PERM=1024m -e MEM_MAX_HEAP=1024m -v /home/containers-linx/container-gerenciador-integracao-web:/opt/jboss/wildfly/standalone/data/gerenciador-integracao-web/ -v /home/containers-linx/container-gerenciador-integracao-web:/opt/jboss/wildfly/standalone/log/ acrbigretail.azurecr.io/gerenciador-integracao-web:<versao> Os itens marcados em vermelho precisam ser substituídos pelos valores definidos do ambiente onde o servidor será executado. Abaixo uma tabela com o detalhamentos desses parâmetros:
Adicionalmente, para uma melhor compreensão do comando, segue abaixo uma tabela com detalhamento das informações:
| TERMINAL LINUX user@group /home/containers-linx/container-gerenciador-integracao-web: docker run --name gerenciador-integracao -dit --network=netlinx --restart=unless-stopped -p 8444:8443 -p 8080:8080 -p 4058:4058 -e DB_CONNINFO=<string conexao banco>-e DB_USER=<usuario banco> -e DB_PASS=<password usuario banco> -e DB_DRIVER=oracle -e MEM_MS=512m -e MEM_MX=512m -e MEM_MAX_PERM=1024m -e MEM_MAX_HEAP=1024m -v /home/containers-linx/container-gerenciador-integracao-web:/opt/jboss/wildfly/standalone/data/gerenciador-integracao-web/ -v /home/containers-linx/container-gerenciador-integracao-web:/opt/jboss/wildfly/standalone/log/ acrbigretail.azurecr.io/gerenciador-integracao-web:<versao> TERMINAL WINDOWS C:\containers-linx\container-servidor-configuracao: docker run --name gerenciador-integracao -dit --network=netlinx --restart=unless-stopped -p 8444:8443 -p 8080:8080 -p 4058:4058 -e DB_CONNINFO=<string conexao banco>-e DB_USER=<usuario banco> -e DB_PASS=<password usuario banco> -e DB_DRIVER=oracle -e MEM_MS=512m -e MEM_MX=512m -e MEM_MAX_PERM=1024m -e MEM_MAX_HEAP=1024m -v C:\containers-linx\:/opt/jboss/wildfly/standalone/data/gerenciador-integracao-web/ -v C:\containers-linx\container-gerenciador-integracao-web:/opt/jboss/wildfly/standalone/log/ acrbigretail.azurecr.io/gerenciador-integracao-web:<versao> |
Etapa 4 - Configuração para Inicialização Automática no Sistema Operacional Windows
Se faz necessário efetuar a configuração para o Start automático da aplicação, essa configuração é extremamente importante para que não haja necessidade de toda a vez em que a maquina onde esta o contêiner for iniciada seja preciso executar manualmente os comandos citados.
Passo a passo | Detalhamento e exemplos |
---|---|
1- No menu Iniciar do Windows efetue a busca por Windows Administrative Tools | |
2- Será aberta a tela de Administrative Tools. Na sequencia, selecionar a opção Task Scheduler | |
3- Na tela do Task Sheduler, clicar no menu Task Scheduler (Local) no canto esquerdo da tela. | |
4- Expandir a seleção até que seja exibido diretório Microsoft. | |
5- Clicar com botão direito na pasta Microsoft e selecione New Folder. | |
6- Será aberta uma caixa de diálogo. Informar nome desejado e depois confirmar pelo botão 'OK' No nosso exemplo consideramos nome DOCKER | |
7 - Seleciona diretório criado anteriormente, clicar com botão direto e selecionar opção CREATE TASK. Na aba General (Geral), definir o nome da Task e marque as mesmas opções da imagem ao lado.
No campo Configure for (Configurar para), selecionar a opção de Sistema Operacional igual a da maquina servidora. EX: se a maquina onde esse processo esta sendo executado é Windows 10 selecione Windows 10 | |
8- Ainda na mesma tela, proceder passos abaixo. Na aba Triggers (Disparadores) clicar no botão NEW (NOVO). Será aberta uma nova tela. No campo Bigin the Tesk (Iniciar a Tarefa) selecione a opção At log on (Ao inicializar)
| |
11- Na aba Actions (Ações) clique no botão NEW (NOVO)
| |
12- Ao termino desse processo clique no botão de OK presente na tela de Create Task, assim que clicar em ok será solicitada a senha de usuário administrador |