baohuixiao commited on
Commit
df560cb
·
verified ·
1 Parent(s): 8551878

Upload 116 files

Browse files
Files changed (3) hide show
  1. Dockerfile +7 -1
  2. config.py +48 -31
  3. space.yaml +2 -0
Dockerfile CHANGED
@@ -7,6 +7,12 @@ RUN pip install --no-cache-dir -r requirements.txt
7
 
8
  COPY . .
9
 
10
- EXPOSE 7777 8019 8000
 
 
 
 
 
 
11
 
12
  CMD ["python", "main.py", "all"]
 
7
 
8
  COPY . .
9
 
10
+ RUN mkdir -p /data
11
+
12
+ ENV OPENAI_COMPAT_PORT=7860 \
13
+ PORT=7860 \
14
+ DATA_DIR=/data
15
+
16
+ EXPOSE 7860
17
 
18
  CMD ["python", "main.py", "all"]
config.py CHANGED
@@ -1,52 +1,69 @@
1
  #!/usr/bin/env python3
2
  # -*- coding: utf-8 -*-
3
- """
4
- 统一配置管理
5
- """
6
-
7
- # ==================== 临时邮箱API配置 ====================
8
- # 临时邮箱服务的基础URL
9
- TEMP_MAIL_BASE_URL = "https://mail.chatgpt.org.uk/api"
 
 
 
 
 
 
 
 
 
10
 
11
  # ==================== 代理配置 ====================
12
  # HTTP代理,用于常规请求
13
- # PROXY_URL = "http://127.0.0.1:7890"
14
- PROXY_URL = ""
15
 
16
  # ==================== 账号池维护 (pool_maintenance.py) ====================
17
- MIN_POOL_SIZE = 5 # 最小账号池大小
18
- MAX_POOL_SIZE = 50 # 最大账号池大小
19
- TOKEN_REFRESH_HOURS = 1 # Token刷新间隔(小时)
20
- MAINTENANCE_CHECK_INTERVAL = 60 # 维护检查间隔(秒)
21
 
22
  # ==================== 数据库配置 ====================
23
- DATABASE_PATH = "warp_accounts.db"
24
- DB_TIMEOUT = 10.0 # 数据库操作超时时间(秒)
 
 
 
25
 
26
  # ==================== Firebase API 配置 ====================
27
- FIREBASE_API_KEY = "AIzaSyBdy3O3S9hrdayLJxJ7mriBR4qgUaUygAs"
28
- FIREBASE_API_KEYS = [
29
- FIREBASE_API_KEY
30
- ]
 
 
31
 
32
  # ==================== 账号池服务 (pool_service.py) ====================
33
- POOL_SERVICE_HOST = "0.0.0.0"
34
- POOL_SERVICE_PORT = 8019
35
- MAX_SESSION_DURATION = 30 * 60 # 会话最大持续时间(30分钟)
36
 
37
  # ==================== 账号注册 (warp_register.py) ====================
38
- TARGET_ACCOUNTS = 200 # 目标账号数
39
- MAX_CONCURRENT_REGISTER = 2 # 最大并发注册数
40
- MAX_PROXY_RETRIES = 5 # 代理重试次数
41
 
42
  # ==================== OpenAI兼容服务 (openai_compat.py) ====================
43
- OPENAI_COMPAT_HOST = "0.0.0.0"
44
- OPENAI_COMPAT_PORT = 7777
45
 
46
  # ==================== Protobuf主服务 (server.py) ====================
47
- SERVER_HOST = "0.0.0.0"
48
- SERVER_PORT = 8000
49
 
50
  # ==================== 日志配置 ====================
51
- LOG_LEVEL = "INFO"
52
- LOG_FORMAT = '%(asctime)s - %(levelname)s - [%(processName)s] - %(message)s'
 
 
 
 
1
  #!/usr/bin/env python3
2
  # -*- coding: utf-8 -*-
3
+ """
4
+ 统一配置管理
5
+ """
6
+
7
+ import os
8
+
9
+
10
+ def _get_env_bool(name: str, default: bool = False) -> bool:
11
+ value = os.getenv(name)
12
+ if value is None:
13
+ return default
14
+ return value.strip().lower() in {"1", "true", "yes", "on"}
15
+
16
+ # ==================== 临时邮箱API配置 ====================
17
+ # 临时邮箱服务的基础URL
18
+ TEMP_MAIL_BASE_URL = os.getenv("TEMP_MAIL_BASE_URL", "https://mail.chatgpt.org.uk/api")
19
 
20
  # ==================== 代理配置 ====================
21
  # HTTP代理,用于常规请求
22
+ # PROXY_URL = "http://127.0.0.1:7890"
23
+ PROXY_URL = os.getenv("PROXY_URL", "")
24
 
25
  # ==================== 账号池维护 (pool_maintenance.py) ====================
26
+ MIN_POOL_SIZE = int(os.getenv("MIN_POOL_SIZE", "5")) # 最小账号池大小
27
+ MAX_POOL_SIZE = int(os.getenv("MAX_POOL_SIZE", "50")) # 最大账号池大小
28
+ TOKEN_REFRESH_HOURS = float(os.getenv("TOKEN_REFRESH_HOURS", "1")) # Token刷新间隔(小时)
29
+ MAINTENANCE_CHECK_INTERVAL = int(os.getenv("MAINTENANCE_CHECK_INTERVAL", "60")) # 维护检查间隔(秒)
30
 
31
  # ==================== 数据库配置 ====================
32
+ DEFAULT_DATABASE_PATH = os.getenv("DATA_DIR", "/data")
33
+ if not os.path.isdir(DEFAULT_DATABASE_PATH):
34
+ DEFAULT_DATABASE_PATH = os.getcwd()
35
+ DATABASE_PATH = os.getenv("DATABASE_PATH", os.path.join(DEFAULT_DATABASE_PATH, "warp_accounts.db"))
36
+ DB_TIMEOUT = float(os.getenv("DB_TIMEOUT", "10.0")) # 数据库操作超时时间(秒)
37
 
38
  # ==================== Firebase API 配置 ====================
39
+ FIREBASE_API_KEY = os.getenv("FIREBASE_API_KEY", "AIzaSyBdy3O3S9hrdayLJxJ7mriBR4qgUaUygAs")
40
+ FIREBASE_API_KEYS = [
41
+ key.strip()
42
+ for key in os.getenv("FIREBASE_API_KEYS", FIREBASE_API_KEY).split(",")
43
+ if key.strip()
44
+ ]
45
 
46
  # ==================== 账号池服务 (pool_service.py) ====================
47
+ POOL_SERVICE_HOST = os.getenv("POOL_SERVICE_HOST", "0.0.0.0")
48
+ POOL_SERVICE_PORT = int(os.getenv("POOL_SERVICE_PORT", "8019"))
49
+ MAX_SESSION_DURATION = int(float(os.getenv("MAX_SESSION_DURATION", str(30 * 60)))) # 会话最大持续时间(30分钟)
50
 
51
  # ==================== 账号注册 (warp_register.py) ====================
52
+ TARGET_ACCOUNTS = int(os.getenv("TARGET_ACCOUNTS", "200")) # 目标账号数
53
+ MAX_CONCURRENT_REGISTER = int(os.getenv("MAX_CONCURRENT_REGISTER", "2")) # 最大并发注册数
54
+ MAX_PROXY_RETRIES = int(os.getenv("MAX_PROXY_RETRIES", "5")) # 代理重试次数
55
 
56
  # ==================== OpenAI兼容服务 (openai_compat.py) ====================
57
+ OPENAI_COMPAT_HOST = os.getenv("OPENAI_COMPAT_HOST", "0.0.0.0")
58
+ OPENAI_COMPAT_PORT = int(os.getenv("OPENAI_COMPAT_PORT", "7860"))
59
 
60
  # ==================== Protobuf主服务 (server.py) ====================
61
+ SERVER_HOST = os.getenv("SERVER_HOST", "0.0.0.0")
62
+ SERVER_PORT = int(os.getenv("SERVER_PORT", "8000"))
63
 
64
  # ==================== 日志配置 ====================
65
+ LOG_LEVEL = os.getenv("LOG_LEVEL", "INFO")
66
+ LOG_FORMAT = os.getenv('LOG_FORMAT', '%(asctime)s - %(levelname)s - [%(processName)s] - %(message)s')
67
+
68
+ # ==================== 其他配置 ====================
69
+ ENABLE_AUTO_REGISTER = _get_env_bool("ENABLE_AUTO_REGISTER", True)
space.yaml ADDED
@@ -0,0 +1,2 @@
 
 
 
1
+ sdk: docker
2
+ app_port: 7860