config.py 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128
  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_NAME = 'dataops-bucket' # 数据资源及元数据上传的bucket
  30. # Bucket configurations - 原配置
  31. """
  32. BUCKET_NAME = os.environ.get('BUCKET_NAME') or 'dev'
  33. if PLATFORM == 'windows':
  34. PREFIX = 'dataops-test'
  35. elif PLATFORM == 'linux':
  36. PREFIX = 'dataops'
  37. """
  38. # Bucket configurations - 新配置
  39. # BUCKET_NAME = 'dataops-test'
  40. PREFIX = '' # 由于 bucket_name 已经包含了所需信息,PREFIX 可以置空
  41. # 新增端口配置基类设置
  42. PORT = 5500 # 默认端口
  43. # 修改后(PostgreSQL配置)
  44. # SQLALCHEMY_DATABASE_URI = 'postgresql://postgres:citupgdba@192.168.3.143:5432/dataops'
  45. # 本地开发环境
  46. SQLALCHEMY_DATABASE_URI = 'postgresql://postgres:postgres@192.168.67.138:5432/dataops'
  47. SQLALCHEMY_ENGINE_OPTIONS = {
  48. 'pool_pre_ping': True,
  49. 'pool_recycle': 300,
  50. 'pool_size': 10,
  51. 'max_overflow': 20
  52. }
  53. # 修改后(PostgreSQL配置)
  54. """
  55. SQLALCHEMY_DATABASE_URI = 'postgresql://postgres:citumxl2357@127.0.0.1:5432/dataops'
  56. SQLALCHEMY_ENGINE_OPTIONS = {
  57. 'pool_pre_ping': True,
  58. 'pool_recycle': 300,
  59. 'pool_size': 10,
  60. 'max_overflow': 20
  61. }
  62. """
  63. # Neo4j配置段
  64. # NEO4J_URI = "bolt://192.168.3.143:7687"
  65. # NEO4J_HTTP_URI = "http://192.168.3.143:7474"
  66. # NEO4J_USER = "neo4j"
  67. # NEO4J_PASSWORD = "mxlneo4j"
  68. NEO4J_URI = "bolt://192.168.67.138:7687"
  69. NEO4J_HTTP_URI = "http://192.168.67.138:7474"
  70. NEO4J_USER = "neo4j"
  71. NEO4J_PASSWORD = "Doudou312$"
  72. NEO4J_ENCRYPTED = False # 内网环境可关闭加密
  73. # Neo4j配置段
  74. """
  75. NEO4J_URI = "bolt://115.190.96.180:7687"
  76. NEO4J_HTTP_URI = "http://115.190.96.180:7474"
  77. NEO4J_USER = "neo4j"
  78. NEO4J_PASSWORD = "mxlneo4j"
  79. NEO4J_ENCRYPTED = False # 内网环境可关闭加密
  80. """
  81. # File paths
  82. if PLATFORM == 'windows':
  83. FILE_PATH = os.environ.get('FILE_PATH') or 'C:/temp/'
  84. elif PLATFORM == 'linux':
  85. FILE_PATH = os.environ.get('FILE_PATH') or '/tmp/'
  86. # 数据资源,Windows 和 Linux 的文件上传和归档根路径配置
  87. # 例如,当excle文件完成加载后,会被自动移动到归档路径。
  88. if PLATFORM == 'windows':
  89. UPLOAD_BASE_PATH = 'C:\\tmp\\upload'
  90. ARCHIVE_BASE_PATH = 'C:\\tmp\\archive'
  91. elif PLATFORM == 'linux':
  92. UPLOAD_BASE_PATH = '/data/upload'
  93. ARCHIVE_BASE_PATH = '/data/archive'
  94. class DevelopmentConfig(Config):
  95. """Development configuration"""
  96. DEBUG = True
  97. PORT = 5500 # 开发环境保持5500
  98. class ProductionConfig(Config):
  99. """Production configuration"""
  100. DEBUG = False
  101. PORT = 80 # 生产环境使用标准HTTP端口
  102. # Configuration dictionary
  103. config = {
  104. 'development': DevelopmentConfig,
  105. 'production': ProductionConfig,
  106. 'default': DevelopmentConfig
  107. }