Build [v1.8.0]

This commit is contained in:
Daniel Bedeleanu
2026-04-13 19:23:48 +03:00
parent 994920bda2
commit 81b775c9ae
18 changed files with 191 additions and 50 deletions

12
config/Caddyfile Normal file
View File

@@ -0,0 +1,12 @@
# TFM aInventory - Caddy Self-Signed Internal Proxy
# This replaces the need for `local-ssl-proxy` in Node.
:{$FRONTEND_SSL_PORT} {
tls internal
reverse_proxy frontend:3000
}
:{$BACKEND_SSL_PORT} {
tls internal
reverse_proxy backend:8000
}

View File

@@ -0,0 +1,25 @@
# ============================================================
# TFM aInventory — Backend Environment Variables
# Copy this file to .env and fill in real values.
# NEVER commit the real .env file to Git!
# ============================================================
# --- AI API Keys ---
# Google Gemini API Key (required for AI label OCR onboarding)
GEMINI_API_KEY=your_gemini_api_key_here
# --- Security ---
# JWT secret key — generate a strong random value for production:
# python3 -c "import secrets; print(secrets.token_urlsafe(64))"
# If not set, an ephemeral key is generated per-run (tokens invalidated on restart).
JWT_SECRET_KEY=change-me-generate-a-secure-random-value
# --- CORS ---
# Comma-separated list of allowed frontend origins
# Example for LAN deployment:
# ALLOWED_ORIGINS=http://192.168.84.113:8907,https://192.168.84.113:8909
ALLOWED_ORIGINS=http://localhost:8907,https://localhost:8909
# --- Data Paths (overridden by start_server.sh / docker-compose) ---
# DATA_DIR=/absolute/path/to/data
# LOGS_DIR=/absolute/path/to/logs

19
config/ldap_config.json Normal file
View File

@@ -0,0 +1,19 @@
{
"ldap_enabled": true,
"server_uri": "ldaps://192.168.84.107:6360",
"base_dn": "dc=ldap,dc=lan",
"user_template": "uid={username},ou=people,dc=ldap,dc=lan",
"groups_dn": "ou=groups",
"use_tls": true,
"role_mappings": [
{
"group": "inventory_admins",
"role": "admin"
},
{
"group": "inventory_users",
"role": "user"
}
],
"ignore_cert": true
}

View File

@@ -0,0 +1,20 @@
{
"_comment": "Copy this file to ldap_config.json and fill in real values. NEVER commit ldap_config.json to Git.",
"ldap_enabled": false,
"server_uri": "ldap://YOUR_LDAP_SERVER_IP:389",
"base_dn": "dc=yourdomain,dc=com",
"user_template": "cn={username},ou=people,dc=yourdomain,dc=com",
"groups_dn": "ou=groups",
"use_tls": false,
"ignore_cert": false,
"role_mappings": [
{
"group": "inventory_admins",
"role": "admin"
},
{
"group": "inventory_users",
"role": "user"
}
]
}

28
config/network_config.env Normal file
View File

@@ -0,0 +1,28 @@
# =============================================================================
# TFM aInventory - Central Network Configuration
# =============================================================================
# Use this file to customize the ports and IP address used by the application
# without needing to modify the source code.
#
# IMPORTANT: After modifying this file, restart the application for changes
# to take effect.
# =============================================================================
# The primary IP address where the application will be accessed.
# Used for CORS settings and documentation links.
SERVER_IP=192.168.84.113
# --- BACKEND PORTS ---
# Internal port for the FastAPI server (Backend)
BACKEND_PORT=8906
# External port for the Backend HTTPS Proxy (Caddy/local-ssl-proxy)
BACKEND_SSL_PORT=8908
# --- FRONTEND PORTS ---
# Internal port for the Next.js dev/prod server
FRONTEND_PORT=8907
# External port for the Frontend HTTPS Proxy (Caddy/local-ssl-proxy)
# This is the port you will use in your browser (e.g. https://192.168.84.113:8909)
FRONTEND_SSL_PORT=8909