Mudanças entre as edições de "INSTALACAO VRFICHA API"

De VRWiki
(1.1 Montando em um host Windows)
Linha 267: Linha 267:
  
 
     volumes:
 
     volumes:
      - Z:\xml\blantech:/VRFichaAPI/blantech
 
 
    ports:
 
      - "9015:9015"
 
</pre>
 
 
===<b>2.3 Ambiente que utiliza ambos os tipos de catraca</b>===
 
 
Caso a loja possa utilizar tanto Acesso quanto Blantech, recomenda-se mapear ambos os diretórios.
 
 
<b>Host Linux</b>
 
<pre>
 
services:
 
  vrficha-api:
 
    image: vrsoftbr/vrfichaapi:4.1.9
 
 
    volumes:
 
      - /mnt/ficha_entrada/xml/acesso:/VRFichaAPI/acesso
 
      - /mnt/ficha_entrada/xml/blantech:/VRFichaAPI/blantech
 
 
    ports:
 
      - "9015:9015"
 
</pre>
 
 
<b>Host Windows</b>
 
<pre>
 
services:
 
  vrficha-api:
 
    image: vrsoftbr/vrfichaapi:4.1.9
 
 
    volumes:
 
      - Z:\xml\acesso:/VRFichaAPI/acesso
 
 
       - Z:\xml\blantech:/VRFichaAPI/blantech
 
       - Z:\xml\blantech:/VRFichaAPI/blantech
  

Edição das 19h56min de 22 de junho de 2026

REQUISITOS MÍNIMOS

Para que o VR Ficha API funcione corretamente de maneira consistente é necessário ter um computador com esta configuração ou superior:

  • VRUbuntu 20.04.0-1 (No Windows, utilizar o WSL)
  • Processador: i3 (5ª geração +) ou equivalente
  • Memória RAM: 8 GB
  • Disco: 80 GB
  • Docker instalado

INSTALAÇÃO

  • Certifique-se de que as configurações do VR Ubuntu foram todas executadas neste link
  • Certifique-se de que o Docker está instalando no sistema operacional na versão mais recente.
  • Faça o download do arquivo docker-compose-vrfichaapi.yml clicando aqui
  • Se o cliente já possuir o VR Service Manager rodando, o RabbitMQ do Service Manager pode ser utilizado, caso contrário, baixe o arquivo docker-compose-rabbitmq.yml clicando aqui para subir o sistema de mensageria no servidor onde ficará o VR Ficha API.
  • No arquivo docker-compose-vrfichaapi.yml é configurado a porta de comunicação com a API, a conexão com o banco de dados e a conexão com o RabbitMQ. (Obs.: A conexão com o RabbitMQ configurada tem que ser a mesma no serviço de impressão dos pedidos, para que este funcione corretamente)
services:
  vrficha-api:
    image: vrsoftbr/vrfichaapi:4.1.10
    ports:
      - "9015:9015"
    environment:
      - TZ=GMT-3
      - PORT=9015
      - DATABASE_IP=
      - DATABASE_PORTA=
      - DATABASE_NOME=
      - DATABASE_USUARIO=
      - DATABASE_SENHA=
      - SYSTEM_NUMEROLOJA=
      - RABBITMQ_IP=
      - RABBITMQ_PORTA=5672
      - RABBITMQ_USUARIO=vr
      - RABBITMQ_SENHA=vr!RbtMQ
    networks:
      - vr-network

networks:
  vr-network:
    external: true
  • Você deve preencher corretamente os dados de conexão com o banco, o numero da loja e os dados de conexão com o RabbitMQ. Não é mais utilizado vr.properties. A configuração é feita diretamente no arquivo de compose do docker.
  • Caso seja necessário alterar a porta, alterar em environment o valor de PORT, e também alterar as portas em ports

INICIALIZAÇÃO

  • Para iniciar a API, basta executar este comando, passando na flag -f o nome do arquivo yml (Executar comando no mesmo diretório onde o arquivo está)
docker compose -f docker-compose-vrfichaapi.yml up -d

Obs: Será necessário estar autenticado no docker, pois a imagem é privada. Caso não esteja, executar o comando docker login e informar as credenciais

  • Caso seja necessário subir o RabbitMQ, executar o docker compose no arquivo do RabbitMQ também
docker compose -f docker-compose-rabbitmq.yml up -d

IMPRESSÃO DAS FICHAS

  • Para realizar a impressão das fichas, é necessário que o VRFichaMobileImpressao esteja sendo executado no servidor e conectado ao mesmo serviço do RabbitMQ em que a API do VRFicha Mobile está, pois ele irá consumir a fila do RabbitMQ e imprimir as fichas na impressora configurada no VRFicha. Você pode encontrar como configura-lo clicando aqui

CATRACAS

  • A aplicação VRFicha API gera arquivos XML para integração com catracas dos tipos Acesso e Blantech
  • A aplicação é executada em container Docker, e grava os arquivos nos diretórios:

Catraca Acesso

/VRFichaAPI/acesso

Catraca Blantech

/VRFichaAPI/blantech

Para que os arquivos sejam disponibilizados em uma pasta compartilhada da rede, recomenda-se:

1. Montar o compartilhamento SMB/Samba no sistema operacional host.
2. Configurar um volume no Docker para mapear o diretório compartilhado para dentro do container.

1. Montando um compartilhamento de rede no host

Cenário

Considere um compartilhamento disponível na rede:

\\192.168.1.100\ficha_entrada

ou

\\SERVIDOR\ficha_entrada

O servidor pode ser:

  • Um computador Windows;
  • Um servidor Linux utilizando Samba;
  • Qualquer dispositivo que disponibilize compartilhamentos SMB.

1.1 Montando em um host Windows

Utilizando o Explorador de Arquivos

1. Abra o Explorador de Arquivos.
2. Clique em "Este Computador".
3. Clique em "Mapear unidade de rede".
4. Escolha uma letra de unidade, por exemplo:

Z:

5. Informe o caminho do compartilhamento:

\\192.168.1.100\ficha_entrada

6. Marque: Reconectar ao entrar
7. Clique em Concluir.

Caso necessário, informe usuário e senha do compartilhamento.

Após a montagem, o compartilhamento estará disponível como:

Z:\

Testando o acesso

Crie manualmente um arquivo:

Z:\xml\acesso\teste.xml

ou

Z:\xml\blantech\teste.xml

Se o arquivo for criado corretamente, a montagem está funcionando.

1.2 Montando em um host Linux

Instale o suporte CIFS caso ainda não esteja instalado.

Ubuntu/Debian:

sudo apt update
sudo apt install cifs-utils

CentOS/RHEL:

sudo yum install cifs-utils

Criando o ponto de montagem

sudo mkdir -p /mnt/ficha_entrada

Montando o compartilhamento

sudo mount -t cifs \
//192.168.1.100/ficha_entrada \
/mnt/ficha_entrada \
-o username=USUARIO,password=SENHA

Exemplo:

sudo mount -t cifs \
//192.168.1.100/ficha_entrada \
/mnt/ficha_entrada \
-o username=vr,password=123456

Validando a montagem

Execute:

ls /mnt/ficha_entrada

Os arquivos e diretórios do compartilhamento deverão ser exibidos.

Também é possível verificar:

mount | grep cifs

Montagem automática na inicialização (opcional)

Adicionar ao arquivo:

/etc/fstab

Exemplo:

//192.168.1.100/ficha_entrada /mnt/ficha_entrada cifs username=vr,password=123456,iocharset=utf8,file_mode=0777,dir_mode=0777 0 0

Após salvar:

sudo mount -a

2. Configurando o Docker Compose

Após a montagem do compartilhamento no host, basta mapear o diretório para dentro do container.

2.1 Configuração para catraca Acesso

A aplicação grava os XMLs em:

./acesso/

que corresponde a:

/VRFichaAPI/acesso

dentro do container.

Host Linux

Supondo que o compartilhamento esteja montado em:

/mnt/ficha_entrada/xml/acesso

Configure:

services:
  vrficha-api:
    image: vrsoftbr/vrfichaapi:4.1.9

    volumes:
      - /mnt/ficha_entrada/xml/acesso:/VRFichaAPI/acesso

    ports:
      - "9015:9015"

Host Windows

Supondo que o compartilhamento esteja mapeado na unidade:

Z:

e que os XMLs devam ser gravados em:

Z:\xml\acesso

Configure:

services:
  vrficha-api:
    image: vrsoftbr/vrfichaapi:4.1.9

    volumes:
      - Z:\xml\acesso:/VRFichaAPI/acesso

    ports:
      - "9015:9015"

2.2 Configuração para catraca Blantech

A aplicação grava os XMLs em:

./blantech/

que corresponde a:

/VRFichaAPI/blantech

dentro do container.

Host Linux

services:
  vrficha-api:
    image: vrsoftbr/vrfichaapi:4.1.9

    volumes:
      - /mnt/ficha_entrada/xml/blantech:/VRFichaAPI/blantech

    ports:
      - "9015:9015"

Host Windows

services:
  vrficha-api:
    image: vrsoftbr/vrfichaapi:4.1.9

    volumes:
      - Z:\xml\blantech:/VRFichaAPI/blantech

    ports:
      - "9015:9015"

Validação Final

Após iniciar o container:

docker compose up -d

Verifique se os diretórios estão montados corretamente:

docker exec -it vrficha-api sh

Para catraca Acesso:

ls -la /VRFichaAPI/acesso

Para catraca Blantech:

ls -la /VRFichaAPI/blantech

Os arquivos XML gerados pela aplicação deverão aparecer nesses diretórios e, consequentemente, no compartilhamento de rede configurado no host.