-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.env.example
More file actions
181 lines (171 loc) · 6.78 KB
/
Copy path.env.example
File metadata and controls
181 lines (171 loc) · 6.78 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
# ============================================================
# Gying Movie - Production Environment Variables
# ============================================================
# Copy this file to .env and fill in your actual values.
# NEVER commit .env to git!
# ============================================================
# --- Database (Cloud MySQL) ---
DB_HOST=your-cloud-mysql-host.com
DB_PORT=3306
DB_NAME=gying
DB_USER=gying_app
DB_PASSWORD=your-strong-db-password
# Used by local MCP tooling. Keep it aligned with DB_PASSWORD unless the MCP user differs.
GYING_DB_PASSWORD=your-strong-db-password
# --- GYING data source ---
GYING_BASE_URL=https://www.xn--wcv59z.com
GYING_TARGET_USER=your-gying-display-name
GYING_USERNAME=
GYING_PASSWORD=
GYING_COOKIE=
GYING_SOURCE_API_TOKEN=replace-with-an-internal-service-token
GYING_SOURCE_BASE_URL=http://gying-source:8091
TMDB_API_BASE_URL=https://api.themoviedb.org/3
QQ_CHANNEL_PUBLISHER_BASE_URL=http://host.docker.internal:8092
QQ_CHANNEL_PUBLISHER_TOKEN=replace-with-the-app-internal-token
SOCIAL_PUBLISHER_BASE_URL=http://social-publisher:8093
SOCIAL_PUBLISHER_TOKEN=replace-with-the-app-internal-token
SOCIAL_PUBLISHER_SCHEDULER_DELAY_MS=60000
# --- Redis ---
REDIS_HOST=host.docker.internal
REDIS_PORT=6379
REDIS_PASSWORD=gyingredis2024
# --- Image Storage (Cloud OSS / S3) ---
# Alibaba Cloud OSS example:
# MINIO_URL_PREFIX=https://gying-images.oss-cn-hangzhou.aliyuncs.com/
# Tencent Cloud COS example:
# MINIO_URL_PREFIX=https://gying-images-1234567890.cos.ap-shanghai.myqcloud.com/
# Keep using MinIO:
# MINIO_URL_PREFIX=https://minio.yourdomain.com/gying/
MINIO_ENDPOINT=host.docker.internal:9000
MINIO_ACCESS_KEY=admin
MINIO_SECRET_KEY=miniopassword
MINIO_BUCKET=gying
MINIO_SECURE=false
MINIO_URL_PREFIX=https://your-cdn-or-oss-domain.com/
# --- CORS ---
# Your production frontend domain
CORS_ALLOWED_ORIGIN=https://yourdomain.com
APP_PUBLIC_BASE_URL=https://yourdomain.com
RESOURCE_HUB_DISCOVERED_RETRY_ENABLED=true
RESOURCE_HUB_DISCOVERED_RETRY_LIMIT=20
RESOURCE_HUB_DISCOVERED_RETRY_DELAY_MS=5000
RESOURCE_HUB_DISCOVERED_RETRY_CRON=0 30 8 * * *
# --- JWT ---
# IMPORTANT: Generate a strong random secret (at least 32 bytes)
# Example: openssl rand -base64 48
JWT_SECRET=REPLACE_WITH_A_STRONG_RANDOM_SECRET_AT_LEAST_32_BYTES
JWT_EXPIRATION_MS=86400000
# --- Internal Service Auth ---
# Used by collector/bot/quark adapters to call internal backend APIs.
BACKEND_PORT=8880
APP_INTERNAL_TOKEN=REPLACE_WITH_A_STRONG_INTERNAL_SERVICE_TOKEN
# --- Resource Hub ---
RESOURCE_HUB_ENABLED=false
RESOURCE_HUB_AUTO_APPROVE=true
TMDB_API_KEY=REPLACE_WITH_YOUR_TMDB_API_KEY
RESOURCE_HUB_TMDB_AUTO_SYNC_ENABLED=false
RESOURCE_HUB_TMDB_AUTO_SYNC_SOURCES=TRENDING_MOVIE_DAY,TRENDING_TV_DAY,POPULAR_MOVIE,POPULAR_TV
RESOURCE_HUB_TMDB_AUTO_SYNC_PAGE=1
RESOURCE_HUB_TMDB_AUTO_SYNC_MAX_ITEMS=20
RESOURCE_HUB_TMDB_AUTO_SYNC_INTERVAL_HOURS=24
RESOURCE_HUB_TMDB_AUTO_DISCOVERY_ENABLED=true
RESOURCE_HUB_TMDB_DISCOVERY_MAX_RESULTS=10
RESOURCE_HUB_TMDB_DISCOVERY_COOLDOWN_HOURS=24
TMDB_REQUEST_INTERVAL_MS=250
TMDB_MAX_RETRIES=2
RESOURCE_HUB_GYING_DISCOVERY_ENABLED=true
RESOURCE_HUB_GYING_AUTO_SYNC_ENABLED=false
RESOURCE_HUB_GYING_AUTO_SYNC_SOURCES=HITS_MOVIE,HITS_TV,HITS_ANIME
RESOURCE_HUB_GYING_AUTO_SYNC_PAGE=1
RESOURCE_HUB_GYING_AUTO_SYNC_MAX_ITEMS=10
RESOURCE_HUB_GYING_AUTO_SYNC_INTERVAL_HOURS=24
GYING_REQUEST_INTERVAL_MS=1000
PANSOU_API_KEY=
PANSO_API_KEY=
# Optional override; defaults to https://www.panso.best
PANSOU_API_BASE_URL=https://www.panso.best
RESOURCE_HUB_PANSOU_BASE_URL=http://host.docker.internal:8888
RESOURCE_HUB_PANSOU_TOKEN=
QUARK_AUTO_SAVE_BASE_URL=http://host.docker.internal:5005
QUARK_AUTO_SAVE_TOKEN=REPLACE_WITH_QUARK_AUTO_SAVE_API_TOKEN
QUARK_AUTO_SAVE_PATH=/GYing Resource Hub
QUARK_AUTO_SAVE_RUN_IMMEDIATELY=true
QUARK_AUTO_SAVE_PATTERN=(.*)\.(mp4|mkv|avi|mov|flv|wmv|webm|m4v|ts)
QUARK_AUTO_SAVE_REPLACE=
QUARK_SHARE_ENABLED=true
# 1 = public share, 2 = private share with passcode.
QUARK_SHARE_URL_TYPE=1
# 1 = permanent, 2 = 1 day, 3 = 7 days, 4 = 30 days.
QUARK_SHARE_EXPIRED_TYPE=1
QUARK_SHARE_PASSCODE=
QUARK_SHARE_POLL_ATTEMPTS=30
QUARK_SHARE_POLL_INTERVAL_MS=1000
# --- Xunlei transfer ---
XUNLEI_ENABLED=false
XUNLEI_BASE_URL=https://api-pan.xunlei.com/drive/v1
XUNLEI_AUTHORIZATION=
# Account login is used when the access token expires. The rotated refresh
# token is stored in the backend data volume, never in Git or MySQL.
XUNLEI_ACCOUNT=
XUNLEI_PASSWORD=
XUNLEI_REFRESH_TOKEN=
XUNLEI_CLIENT_ID=
XUNLEI_CLIENT_SECRET=
XUNLEI_DEVICE_ID=
XUNLEI_CLIENT_VERSION=1.82.0
XUNLEI_CAPTCHA_TOKEN=
XUNLEI_TOKEN_STATE_PATH=/app/data/xunlei-auth.json
XUNLEI_SAVE_PATH=/影视剧资源分享(先转存后再查看)/GYing Resource Hub
# Keep disabled until the public share creation endpoint is verified.
XUNLEI_SHARE_ENABLED=false
XUNLEI_SHARE_CREATE_PATH=/share
XUNLEI_POLL_ATTEMPTS=20
XUNLEI_POLL_INTERVAL_MS=1000
RESOURCE_HUB_WORKER_ENABLED=false
RESOURCE_HUB_WORKER_FIXED_DELAY_MS=60000
RESOURCE_HUB_WORKER_TASK_LIMIT=5
RESOURCE_HUB_WORKER_QUARK_LIMIT=5
RESOURCE_HUB_WORKER_XUNLEI_LIMIT=5
RESOURCE_HUB_WORKER_PUBLISH_LIMIT=20
# Optional fallback used by the backend to restore quark-auto-save cookie config.
# Prefer configuring the cookie in quark-auto-save WebUI first.
QUARK_COOKIE=
# --- QQ Bot / NapCat ---
QQ_BOT_ENABLED=false
QQ_BOT_WEBHOOK_TOKEN=REPLACE_WITH_QQ_BOT_WEBHOOK_TOKEN
QQ_BOT_ALLOWED_GROUPS=2166070253
QQ_BOT_COMMAND_PREFIXES=找,搜,/movie,/search
QQ_BOT_MAX_RESULTS=3
QQ_BOT_MIN_KEYWORD_LENGTH=2
QQ_BOT_RATE_LIMIT_PER_MINUTE=5
QQ_BOT_BLOCKED_KEYWORDS=
QQ_BOT_AUTO_TRANSFER=true
QQ_BOT_DEFAULT_REPLY=机器人使用方法:@机器人 搜/找 影片名;影片上下文保留 5 分钟;先选择影片,再从资源名称/画质候选中回复单个序号。可回复“夸克”或“迅雷”筛选;不支持按数量批量转存。
QQ_BOT_REPLY_PROVIDER=napcat
QQ_BOT_DAILY_RECOMMENDATION_CHECK_MS=60000
QQ_BOT_NAPCAT_BASE_URL=http://napcat:3000
QQ_BOT_NAPCAT_ACCESS_TOKEN=
QQ_BOT_QQBOT_APP_ID=
QQ_BOT_QQBOT_CLIENT_SECRET=
QQ_BOT_QQBOT_GROUP_OPENIDS=2166070253:REPLACE_WITH_GROUP_OPENID
QQ_BOT_QQBOT_API_BASE_URL=https://api.sgroup.qq.com
QQ_BOT_QQBOT_TOKEN_URL=https://bots.qq.com/app/getAppAccessToken
NAPCAT_ACCOUNT=3929013344
# --- QQ Channel / OpenClaw ---
# Public channel identifiers; keep bot tokens out of git.
QQ_CHANNEL_NUMBER=pd54387067
QQ_CHANNEL_GUILD_ID=86486581783412489
# Legacy fallback board ID. Prefer QQ_CHANNEL_MOVIE_ID and QQ_CHANNEL_TV_ID below.
QQ_CHANNEL_ID=736090076
QQ_CHANNEL_MOVIE_ID=736142774
QQ_CHANNEL_TV_ID=736142775
# QQ publishing accounts are added by QR authorization in the admin UI.
# --- Sina Weibo web session publisher ---
# Use a fresh logged-in web session. Never commit these values.
WEIBO_WEB_COOKIE=
# Optional when XSRF-TOKEN is present in WEIBO_WEB_COOKIE.
WEIBO_WEB_XSRF_TOKEN=
WEIBO_WEB_FINGERPRINT=
WEIBO_WEB_CLIENT_VERSION=v1.1.237
WEIBO_WEB_USER_AGENT=