File size: 4,519 Bytes
927965d
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
# Docker 环境脚本注入配置指南

## 概述

本指南专门针对 Docker 环境中的油猴脚本注入功能配置。

## 快速开始

### 1. 基础配置

```bash

# 进入 docker 目录

cd docker



# 复制配置模板

cp .env.docker .env



# 编辑配置文件

nano .env

````.env` 文件中确保以下配置:

```env

# 启用脚本注入

ENABLE_SCRIPT_INJECTION=true



# 使用默认脚本(模型数据直接从脚本解析)

USERSCRIPT_PATH=browser_utils/more_modles.js

```

### 2. 启动容器

```bash

# 构建并启动

docker compose up -d



# 查看日志确认脚本注入状态

docker compose logs -f | grep "脚本注入"

```

## 自定义配置

### 方法 1: 直接替换脚本文件

```bash

# 1. 创建自定义油猴脚本

cp ../browser_utils/more_modles.js ../browser_utils/my_custom_script.js



# 2. 编辑脚本文件中的 MODELS_TO_INJECT 数组

nano ../browser_utils/my_custom_script.js



# 3. 重启容器

docker compose restart

```

### 方法 2: 挂载自定义脚本

```bash

# 1. 创建自定义脚本文件

cp ../browser_utils/more_modles.js ../browser_utils/my_script.js



# 2. 编辑 docker-compose.yml,取消注释并修改:

# volumes:

#   - ../browser_utils/my_script.js:/app/browser_utils/more_modles.js:ro



# 3. 重启服务

docker compose down

docker compose up -d

```

### 方法 3: 环境变量配置

```bash

# 1. 在 .env 文件中修改路径

echo "USERSCRIPT_PATH=browser_utils/my_custom_script.js" >> .env



# 2. 创建对应的脚本文件

cp ../browser_utils/more_modles.js ../browser_utils/my_custom_script.js



# 3. 重启容器

docker compose restart

```

## 验证脚本注入

### 检查日志

```bash

# 查看脚本注入相关日志

docker compose logs | grep -E "(脚本注入|script.*inject|模型增强)"



# 实时监控日志

docker compose logs -f | grep -E "(脚本注入|script.*inject|模型增强)"

```

### 预期日志输出

成功的脚本注入应该显示类似以下日志:

```

设置网络拦截和脚本注入...

成功设置模型列表网络拦截

成功解析 6 个模型从油猴脚本

添加了 6 个注入的模型到API模型列表

✅ 脚本注入成功,模型显示效果与油猴脚本100%一致

   解析的模型: 👑 Kingfall, ✨ Gemini 2.5 Pro, 🦁 Goldmane...

```

### 进入容器检查

```bash

# 进入容器

docker compose exec ai-studio-proxy /bin/bash



# 检查脚本文件

cat /app/browser_utils/more_modles.js



# 检查脚本文件列表

ls -la /app/browser_utils/*.js



# 退出容器

exit

```

## 故障排除

### 脚本注入失败

1. **检查配置文件路径**```bash

   docker compose exec ai-studio-proxy ls -la /app/browser_utils/

   ```

2. **检查文件权限**```bash

   docker compose exec ai-studio-proxy cat /app/browser_utils/more_modles.js

   ```

3. **查看详细错误日志**```bash

   docker compose logs | grep -A 5 -B 5 "脚本注入"

   ```

### 脚本文件无效

1. **验证 JavaScript 格式**```bash

   # 在主机上验证 JavaScript 语法

   node -c browser_utils/more_modles.js

   ```

2. **检查必需字段**:
   确保每个模型都有 `name``displayName` 字段。

### 禁用脚本注入

如果遇到问题,可以临时禁用:

```bash

# 在 .env 文件中设置

echo "ENABLE_SCRIPT_INJECTION=false" >> .env



# 重启容器

docker compose restart

```

## 高级配置

### 使用自定义脚本

```bash

# 1. 将自定义脚本放在 browser_utils/ 目录

cp your_custom_script.js ../browser_utils/custom_injector.js



# 2. 在 .env 中修改脚本路径

echo "USERSCRIPT_PATH=browser_utils/custom_injector.js" >> .env



# 3. 重启容器

docker compose restart

```

### 多环境配置

```bash

# 开发环境

cp .env.docker .env.dev

# 编辑 .env.dev



# 生产环境

cp .env.docker .env.prod

# 编辑 .env.prod



# 使用特定环境启动

cp .env.prod .env

docker compose up -d

```

## 注意事项

1. **文件挂载**: 确保主机上的文件路径正确
2. **权限问题**: Docker 容器内的文件权限可能需要调整
3. **重启生效**: 配置更改后需要重启容器
4. **日志监控**: 通过日志确认脚本注入状态
5. **备份配置**: 建议备份工作的配置文件

## 示例配置文件

参考 `model_configs_docker_example.json` 文件了解完整的配置格式和选项。