Serviço Java 17/Spring Boot para agendamento e execução de cargas, exportações e monitoramentos. O mesmo módulo também fornece o BIMGateway, ativado por extractor.mode=true.
src/main/java: agendador, extratores, APIs e configurações dos modos Cron e Gateway.src/main/resources: propriedades, configurações Quartz e migrações.ui/src: interface React/TypeScript.ui/vite.config.ts: configuração do frontend Vite.src/test: testes Java.build.Dockerfile: imagem do agendador.gateway.Dockerfile: imagem do BIMGateway.Use JDK 17, Maven 3.8.6, Node.js 24 com npm e PostgreSQL 16. A imagem de build principal usa Node.js 24.15.0. As dependências Java são resolvidas pelo Maven Central e pelo Nexus configurados no pom.xml, sem instalação manual de JARs.
Dentro de bim-cron, instale primeiro as dependências do frontend:
npm install
Configure as propriedades do ambiente antes de executar o backend. O modo Cron carrega sol7bi2.properties na pasta home do usuário; configurações Spring Boot também podem ser fornecidas por argumentos de execução.
| Propriedades | Uso |
|---|---|
spring.datasource.* | Banco PostgreSQL próprio do agendador. |
db.url, db.user, db.password | Banco da aplicação BIMACHINE. |
db.data.origins.* | Banco das origens de dados. |
application.url | URL do portal, por exemplo http://localhost:8080. |
integration.initialUrl | URL do serviço de integrações. |
scheduler.working.directory | Diretório temporário usado nas cargas. |
scheduler.load.directory | Caminho correspondente acessível ao PostgreSQL, quando diferente do diretório temporário. |
server.port | Porta do backend; padrão local 8081. |
Use src/main/resources/application.properties e o Docker Compose da raiz como referência das propriedades e conexões entre os serviços. O usuário do processo e o PostgreSQL precisam acessar os diretórios usados nas cargas com as permissões necessárias.
Para executar o backend:
mvn spring-boot:run
Na configuração do portal, a propriedade scheduler.url deve apontar para esse serviço.
Para acompanhar alterações do frontend, em outro terminal na mesma pasta:
npm run dev
O Vite usa a porta 5274 e a base /static. O backend permanece na porta 8081. O perfil Spring dev configura os diretórios estáticos locais; ative-o na execução de desenvolvimento conforme necessário.
mvn -DskipTests package
O Maven também executa o build do frontend. O JAR é gerado em target; execute o arquivo correspondente à versão em uso com java -jar target/bim-cron-<versao>.jar, mantendo as configurações de banco e diretórios do ambiente.
Para executar os testes Java, use mvn test. As fases Maven também executam as etapas npm definidas no POM.
O Gateway extrai dados no ambiente do cliente e os envia para a plataforma. Para executá-lo com o JAR, use --extractor.mode=true. As propriedades desse modo estão em ExtractorModeConfig:
extractorConfig.url: URL da plataforma; padrão https://app.bimachine.com.extractorConfig.dataDir: diretório persistente das configurações e vínculos.extractorConfig.tempDir: diretório temporário das extrações.A imagem sol7/bim-gateway já ativa esse modo e usa a porta interna 8080. Exemplo de Compose com uma tag da versão desejada:
services:
bim-gateway:
image: sol7/bim-gateway:${TAG}
restart: unless-stopped
ports:
- "8080:8080"
volumes:
- ./.data:/app/.data
- ./temp:/app/temp
# Para extração de arquivos locais, acrescente a pasta correspondente:
# - /caminho/dos/arquivos:/files
Defina TAG no ambiente ou no arquivo .env do Compose. A pasta .data conserva o vínculo com a plataforma e precisa ser preservada nas atualizações. Após iniciar, acesse http://localhost:8080 para configurar a conexão.
Content type
Image
Digest
sha256:6da0d8bfc…
Size
272.9 MB
Last updated
about 5 hours ago
docker pull sol7/bim-gateway