mirror of
https://github.com/NoFxAiOS/nofx.git
synced 2026-06-06 05:51:19 +08:00
- Migrate all store packages from raw database/sql to GORM ORM - Add PostgreSQL support alongside SQLite - Move EncryptedString type to crypto package for cleaner architecture - Add automatic encryption/decryption for sensitive fields (API keys, secrets) - Fix PostgreSQL AutoMigrate conflicts by skipping existing tables - Fix duplicate /klines route registration - Update tests to use GORM database connections - Add database configuration support in config package
70 lines
2.1 KiB
Plaintext
70 lines
2.1 KiB
Plaintext
# NOFX Environment Variables Template
|
||
# Copy this file to .env and modify the values as needed
|
||
|
||
# ===========================================
|
||
# Server Configuration
|
||
# ===========================================
|
||
|
||
# Backend API server port
|
||
NOFX_BACKEND_PORT=8080
|
||
|
||
# Frontend web interface port
|
||
NOFX_FRONTEND_PORT=3000
|
||
|
||
# Timezone
|
||
NOFX_TIMEZONE=Asia/Shanghai
|
||
|
||
# ===========================================
|
||
# Authentication (Required)
|
||
# ===========================================
|
||
|
||
# JWT signing secret (any random string, at least 32 characters)
|
||
# Generate with: openssl rand -base64 32
|
||
JWT_SECRET=your-jwt-secret-change-this-in-production
|
||
|
||
# ===========================================
|
||
# Encryption Keys (Required)
|
||
# ===========================================
|
||
|
||
# AES-256 data encryption key (Base64 encoded, 32 bytes)
|
||
# Used for encrypting sensitive data in database (API keys, secrets)
|
||
# Generate with: openssl rand -base64 32
|
||
DATA_ENCRYPTION_KEY=your-base64-encoded-32-byte-key
|
||
|
||
# RSA private key for client-server encryption (PEM format)
|
||
# Used for end-to-end encryption of sensitive data from browser
|
||
# Generate with: openssl genrsa 2048
|
||
# Note: Replace newlines with \n for single-line format
|
||
RSA_PRIVATE_KEY=-----BEGIN RSA PRIVATE KEY-----\nYOUR_KEY_HERE\n-----END RSA PRIVATE KEY-----
|
||
|
||
# ===========================================
|
||
# Security Options
|
||
# ===========================================
|
||
|
||
# Transport encryption for API keys (default: false)
|
||
# When enabled, browser uses Web Crypto API to encrypt API keys before sending
|
||
# Requires HTTPS or localhost to work
|
||
# Set to true for enhanced security (HTTPS required)
|
||
# Set to false for easier deployment (HTTP/IP access allowed)
|
||
TRANSPORT_ENCRYPTION=false
|
||
|
||
# ===========================================
|
||
# Optional: External Services
|
||
# ===========================================
|
||
|
||
# Telegram notifications (optional)
|
||
# TELEGRAM_BOT_TOKEN=your-bot-token
|
||
# TELEGRAM_CHAT_ID=your-chat-id
|
||
|
||
DB_TYPE=postgres
|
||
DB_HOST=10.
|
||
DB_PORT=5432
|
||
DB_USER=nofx_user
|
||
DB_PASSWORD=
|
||
DB_NAME=nofx
|
||
DB_SSLMODE=disable
|
||
|
||
|
||
# 数据库配置 - SQLite(默认)
|
||
DB_TYPE=sqlite
|
||
DB_PATH=data/data.db |