config.py 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127
  1. import os
  2. import platform
  3. class Config:
  4. """Base configuration class"""
  5. SECRET_KEY = os.environ.get('SECRET_KEY') or 'you-will-never-guess'
  6. JSON_AS_ASCII = False
  7. # Platform specific configurations
  8. PLATFORM = platform.system().lower()
  9. # File paths
  10. if PLATFORM == 'windows':
  11. FILE_PATH = os.environ.get('FILE_PATH') or 'C:/temp/'
  12. elif PLATFORM == 'linux':
  13. FILE_PATH = os.environ.get('FILE_PATH') or '/tmp/'
  14. # Upload configurations
  15. UPLOAD_FOLDER = f"{FILE_PATH}resource_uploads/"
  16. ALLOWED_EXTENSIONS = {'txt', 'pdf', 'png', 'jpg', 'jpeg', 'gif', 'xlsx', 'xls', 'csv'}
  17. # MinIO configurations - 原配置
  18. """
  19. MINIO_HOST = os.environ.get('MINIO_HOST') or 'minio.citupro.com'
  20. MINIO_USER = os.environ.get('MINIO_USER') or 'default-user'
  21. MINIO_PASSWORD = os.environ.get('MINIO_PASSWORD') or 'default-password'
  22. MINIO_SECURE = True
  23. """
  24. # MinIO configurations - 新配置
  25. MINIO_HOST = '192.168.67.138:9000'
  26. MINIO_USER = 'citu-test'
  27. MINIO_PASSWORD = 'citu-test'
  28. MINIO_SECURE = False # 内网环境,设置为 False
  29. # Bucket configurations - 原配置
  30. """
  31. BUCKET_NAME = os.environ.get('BUCKET_NAME') or 'dev'
  32. if PLATFORM == 'windows':
  33. PREFIX = 'dataops-test'
  34. elif PLATFORM == 'linux':
  35. PREFIX = 'dataops'
  36. """
  37. # Bucket configurations - 新配置
  38. BUCKET_NAME = 'dataops-test'
  39. PREFIX = '' # 由于 bucket_name 已经包含了所需信息,PREFIX 可以置空
  40. # 新增端口配置基类设置
  41. PORT = 5500 # 默认端口
  42. # 修改后(PostgreSQL配置)
  43. # SQLALCHEMY_DATABASE_URI = 'postgresql://postgres:citupgdba@192.168.3.143:5432/dataops'
  44. # 本地开发环境
  45. SQLALCHEMY_DATABASE_URI = 'postgresql://postgres:postgres@192.168.67.138:5432/dataops'
  46. SQLALCHEMY_ENGINE_OPTIONS = {
  47. 'pool_pre_ping': True,
  48. 'pool_recycle': 300,
  49. 'pool_size': 10,
  50. 'max_overflow': 20
  51. }
  52. # 修改后(PostgreSQL配置)
  53. """
  54. SQLALCHEMY_DATABASE_URI = 'postgresql://postgres:citumxl2357@127.0.0.1:5432/dataops'
  55. SQLALCHEMY_ENGINE_OPTIONS = {
  56. 'pool_pre_ping': True,
  57. 'pool_recycle': 300,
  58. 'pool_size': 10,
  59. 'max_overflow': 20
  60. }
  61. """
  62. # Neo4j配置段
  63. # NEO4J_URI = "bolt://192.168.3.143:7687"
  64. # NEO4J_HTTP_URI = "http://192.168.3.143:7474"
  65. # NEO4J_USER = "neo4j"
  66. # NEO4J_PASSWORD = "mxlneo4j"
  67. NEO4J_URI = "bolt://192.168.67.138:7687"
  68. NEO4J_HTTP_URI = "http://192.168.67.138:7474"
  69. NEO4J_USER = "neo4j"
  70. NEO4J_PASSWORD = "Doudou312$"
  71. NEO4J_ENCRYPTED = False # 内网环境可关闭加密
  72. # Neo4j配置段
  73. """
  74. NEO4J_URI = "bolt://115.190.96.180:7687"
  75. NEO4J_HTTP_URI = "http://115.190.96.180:7474"
  76. NEO4J_USER = "neo4j"
  77. NEO4J_PASSWORD = "mxlneo4j"
  78. NEO4J_ENCRYPTED = False # 内网环境可关闭加密
  79. """
  80. # File paths
  81. if PLATFORM == 'windows':
  82. FILE_PATH = os.environ.get('FILE_PATH') or 'C:/temp/'
  83. elif PLATFORM == 'linux':
  84. FILE_PATH = os.environ.get('FILE_PATH') or '/tmp/'
  85. # 数据资源,Windows 和 Linux 的文件上传和归档根路径配置
  86. # 例如,当excle文件完成加载后,会被自动移动到归档路径。
  87. if PLATFORM == 'windows':
  88. UPLOAD_BASE_PATH = 'C:\\tmp\\upload'
  89. ARCHIVE_BASE_PATH = 'C:\\tmp\\archive'
  90. elif PLATFORM == 'linux':
  91. UPLOAD_BASE_PATH = '/data/upload'
  92. ARCHIVE_BASE_PATH = '/data/archive'
  93. class DevelopmentConfig(Config):
  94. """Development configuration"""
  95. DEBUG = True
  96. PORT = 5500 # 开发环境保持5500
  97. class ProductionConfig(Config):
  98. """Production configuration"""
  99. DEBUG = False
  100. PORT = 80 # 生产环境使用标准HTTP端口
  101. # Configuration dictionary
  102. config = {
  103. 'development': DevelopmentConfig,
  104. 'production': ProductionConfig,
  105. 'default': DevelopmentConfig
  106. }