fix: VIN OCR scanning fails with "No VIN Pattern found" on all images (#113) #114

Merged
egullickson merged 15 commits from issue-113-fix-vin-ocr-scanning into main 2026-02-07 15:47:37 +00:00
3 changed files with 58 additions and 16 deletions
Showing only changes of commit 9ce08cbb89 - Show all commits

View File

@@ -52,7 +52,7 @@ global:
# Logging
log:
level: INFO
level: DEBUG
format: json
# Access logs

View File

@@ -9,16 +9,13 @@
# - Development-specific settings
services:
# PostgreSQL - Remove development port exposure
mvp-postgres:
ports: []
# Redis - Remove development port exposure
mvp-redis:
ports: []
# Traefik - Ensure dashboard authentication is enforced
# Traefik - Production log level and dashboard auth
mvp-traefik:
environment:
LOG_LEVEL: error
command:
- --configFile=/etc/traefik/traefik.yml
- --log.level=ERROR
labels:
- "traefik.enable=true"
- "traefik.http.routers.traefik-dashboard.rule=Host(`traefik.motovaultpro.local`)"
@@ -26,3 +23,45 @@ services:
- "traefik.http.routers.traefik-dashboard.middlewares=dashboard-auth"
- "traefik.http.services.traefik-dashboard.loadbalancer.server.port=8080"
- "traefik.http.middlewares.dashboard-auth.basicauth.users=admin:$$2y$$10$$foobar"
# Backend - Production log level
mvp-backend:
environment:
NODE_ENV: production
CONFIG_PATH: /app/config/production.yml
SECRETS_DIR: /run/secrets
LOG_LEVEL: error
DATABASE_HOST: mvp-postgres
REDIS_HOST: mvp-redis
STRIPE_PRO_MONTHLY_PRICE_ID: prod_Toj6BG9Z9JwREl
STRIPE_PRO_YEARLY_PRICE_ID: prod_Toj8oo0RpVBQmB
STRIPE_ENTERPRISE_MONTHLY_PRICE_ID: prod_Toj8xGEui9jl6j
STRIPE_ENTERPRISE_YEARLY_PRICE_ID: prod_Toj9A7A773xrdn
# OCR - Production log level
mvp-ocr:
environment:
LOG_LEVEL: error
REDIS_HOST: mvp-redis
REDIS_PORT: 6379
REDIS_DB: 1
# PostgreSQL - Remove dev ports, production log level
mvp-postgres:
ports: []
environment:
POSTGRES_DB: motovaultpro
POSTGRES_USER: postgres
POSTGRES_PASSWORD_FILE: /run/secrets/postgres-password
POSTGRES_INITDB_ARGS: --encoding=UTF8
LOG_LEVEL: error
POSTGRES_LOG_STATEMENT: none
POSTGRES_LOG_MIN_DURATION_STATEMENT: -1
PGDATA: /var/lib/postgresql/data
# Redis - Remove dev ports, production log level
mvp-redis:
ports: []
command: redis-server --appendonly yes --loglevel ${LOG_LEVEL:-info}
environment:
LOG_LEVEL: error

View File

@@ -11,6 +11,7 @@ services:
command:
- --configFile=/etc/traefik/traefik.yml
environment:
LOG_LEVEL: debug
CLOUDFLARE_DNS_API_TOKEN_FILE: /run/secrets/cloudflare-dns-token
ports:
- "80:80"
@@ -112,6 +113,7 @@ services:
NODE_ENV: production
CONFIG_PATH: /app/config/production.yml
SECRETS_DIR: /run/secrets
LOG_LEVEL: debug
# Service references
DATABASE_HOST: mvp-postgres
REDIS_HOST: mvp-redis
@@ -192,7 +194,7 @@ services:
REDIS_PORT: 6379
REDIS_DB: 1
volumes:
- vin-debug:/tmp/vin-debug
- /tmp/vin-debug:/tmp/vin-debug
networks:
- backend
- database
@@ -220,8 +222,9 @@ services:
POSTGRES_USER: postgres
POSTGRES_PASSWORD_FILE: /run/secrets/postgres-password
POSTGRES_INITDB_ARGS: --encoding=UTF8
POSTGRES_LOG_STATEMENT: ${POSTGRES_LOG_STATEMENT:-ddl}
POSTGRES_LOG_MIN_DURATION_STATEMENT: ${POSTGRES_LOG_MIN_DURATION:-500}
LOG_LEVEL: debug
POSTGRES_LOG_STATEMENT: all
POSTGRES_LOG_MIN_DURATION_STATEMENT: 0
PGDATA: /var/lib/postgresql/data
volumes:
- mvp_postgres_data:/var/lib/postgresql/data
@@ -248,7 +251,9 @@ services:
image: ${REGISTRY_MIRRORS:-git.motovaultpro.com/egullickson/mirrors}/redis:8.4-alpine
container_name: mvp-redis
restart: unless-stopped
command: redis-server --appendonly yes --loglevel ${REDIS_LOGLEVEL:-notice}
command: redis-server --appendonly yes --loglevel ${LOG_LEVEL:-info}
environment:
LOG_LEVEL: debug
volumes:
- mvp_redis_data:/data
networks:
@@ -398,5 +403,3 @@ volumes:
name: mvp_loki_data
mvp_grafana_data:
name: mvp_grafana_data
vin-debug:
name: mvp_vin_debug