compose: osrm local de volta (baixa grafo 1x; OSRM_URL remoto até ficar pronto)

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Hpjc1TdaRAHoYC6wCFw19E
This commit is contained in:
Erico Mac
2026-09-17 13:24:48 -03:00
co-authored by Claude Opus 5
parent bbf8c7ff9a
commit 99e1e245de
2 changed files with 38 additions and 4 deletions
+19 -2
View File
@@ -13,8 +13,9 @@
# Variables do Coolify. EVIDENCE_KEYS: "1:<openssl rand -base64 32>" (guarde cópia!). # Variables do Coolify. EVIDENCE_KEYS: "1:<openssl rand -base64 32>" (guarde cópia!).
# • Certificado A1 (ingestor, dfe-worker, backend): DFE_CERT_PFX_BASE64 + DFE_CERT_PASSPHRASE # • Certificado A1 (ingestor, dfe-worker, backend): DFE_CERT_PFX_BASE64 + DFE_CERT_PASSPHRASE
# como variáveis secretas no Coolify — sem montar arquivo no servidor. # como variáveis secretas no Coolify — sem montar arquivo no servidor.
# • Drenagem: ingestor (ONE) + dfe-worker (cadeia). O OSRM (grafo do Brasil, 15 GB) NÃO roda # • Drenagem: ingestor (ONE) + dfe-worker (cadeia) + osrm. O osrm baixa o grafo (15 GB) 1 vez
# aqui — não cabe no disco; fica na VPS antiga, acessado por OSRM_URL (caminho secreto). # de OSRM_DATA_URL para o volume osrm_data; processor/dfe-worker roteiam por OSRM_URL
# (http://osrm:5000 quando o grafo estiver pronto).
# ============================================================================ # ============================================================================
x-app-env: x-app-env:
DATABASE_URL: 'postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@db:5432/${POSTGRES_DB}?schema=public' DATABASE_URL: 'postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@db:5432/${POSTGRES_DB}?schema=public'
@@ -73,6 +74,21 @@ services:
- gotenberg - gotenberg
- '--chromium-disable-javascript=false' - '--chromium-disable-javascript=false'
- '--api-timeout=60s' - '--api-timeout=60s'
osrm:
# Rotas pelas vias (grafo do Brasil, MLD, v5.26.0). Na 1ª subida BAIXA o grafo
# (15 GB) de OSRM_DATA_URL para o volume osrm_data (retoma e confere sha256); nas
# seguintes só roteia. Serviço de longa duração: o deploy não fica esperando.
# --mmap: ~70-700 MB de RAM. Precisa de ~25 GB livres no disco na 1ª subida.
# Enquanto baixa, OSRM_URL pode continuar apontando para o OSRM remoto; quando o log
# mostrar "grafo OSRM pronto", troque OSRM_URL para http://osrm:5000 e faça Redeploy.
image: 'gitea.externo.utic.app.br/ericoalmeida/rastro-osrm:v1'
restart: unless-stopped
environment:
OSRM_DATA_URL: '${OSRM_DATA_URL}'
volumes:
- 'osrm_data:/data'
expose:
- '5000'
ingestor: ingestor:
# DRENAGEM do ONE (passagens + fotos). Valores de cadência da produção antiga. # DRENAGEM do ONE (passagens + fotos). Valores de cadência da produção antiga.
image: 'gitea.externo.utic.app.br/ericoalmeida/rastro-node:v3.3' image: 'gitea.externo.utic.app.br/ericoalmeida/rastro-node:v3.3'
@@ -286,6 +302,7 @@ services:
expose: expose:
- '39020' - '39020'
volumes: volumes:
osrm_data: null
dbdata2: null dbdata2: null
rabbitmq_data: null rabbitmq_data: null
minio_data: null minio_data: null
+19 -2
View File
@@ -13,8 +13,9 @@
# Variables do Coolify. EVIDENCE_KEYS: "1:<openssl rand -base64 32>" (guarde cópia!). # Variables do Coolify. EVIDENCE_KEYS: "1:<openssl rand -base64 32>" (guarde cópia!).
# • Certificado A1 (ingestor, dfe-worker, backend): DFE_CERT_PFX_BASE64 + DFE_CERT_PASSPHRASE # • Certificado A1 (ingestor, dfe-worker, backend): DFE_CERT_PFX_BASE64 + DFE_CERT_PASSPHRASE
# como variáveis secretas no Coolify — sem montar arquivo no servidor. # como variáveis secretas no Coolify — sem montar arquivo no servidor.
# • Drenagem: ingestor (ONE) + dfe-worker (cadeia). O OSRM (grafo do Brasil, 15 GB) NÃO roda # • Drenagem: ingestor (ONE) + dfe-worker (cadeia) + osrm. O osrm baixa o grafo (15 GB) 1 vez
# aqui — não cabe no disco; fica na VPS antiga, acessado por OSRM_URL (caminho secreto). # de OSRM_DATA_URL para o volume osrm_data; processor/dfe-worker roteiam por OSRM_URL
# (http://osrm:5000 quando o grafo estiver pronto).
# ============================================================================ # ============================================================================
x-app-env: x-app-env:
DATABASE_URL: 'postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@db:5432/${POSTGRES_DB}?schema=public' DATABASE_URL: 'postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@db:5432/${POSTGRES_DB}?schema=public'
@@ -73,6 +74,21 @@ services:
- gotenberg - gotenberg
- '--chromium-disable-javascript=false' - '--chromium-disable-javascript=false'
- '--api-timeout=60s' - '--api-timeout=60s'
osrm:
# Rotas pelas vias (grafo do Brasil, MLD, v5.26.0). Na 1ª subida BAIXA o grafo
# (15 GB) de OSRM_DATA_URL para o volume osrm_data (retoma e confere sha256); nas
# seguintes só roteia. Serviço de longa duração: o deploy não fica esperando.
# --mmap: ~70-700 MB de RAM. Precisa de ~25 GB livres no disco na 1ª subida.
# Enquanto baixa, OSRM_URL pode continuar apontando para o OSRM remoto; quando o log
# mostrar "grafo OSRM pronto", troque OSRM_URL para http://osrm:5000 e faça Redeploy.
image: 'gitea.externo.utic.app.br/ericoalmeida/rastro-osrm:v1'
restart: unless-stopped
environment:
OSRM_DATA_URL: '${OSRM_DATA_URL}'
volumes:
- 'osrm_data:/data'
expose:
- '5000'
ingestor: ingestor:
# DRENAGEM do ONE (passagens + fotos). Valores de cadência da produção antiga. # DRENAGEM do ONE (passagens + fotos). Valores de cadência da produção antiga.
image: 'gitea.externo.utic.app.br/ericoalmeida/rastro-node:v3.3' image: 'gitea.externo.utic.app.br/ericoalmeida/rastro-node:v3.3'
@@ -286,6 +302,7 @@ services:
expose: expose:
- '39020' - '39020'
volumes: volumes:
osrm_data: null
dbdata2: null dbdata2: null
rabbitmq_data: null rabbitmq_data: null
minio_data: null minio_data: null