新增功能: - 集成 Cloudflare WARP socks5 代理服务 - 通过环境变量 USE_PROXY 控制代理开关 - 支持自定义 HTTP/HTTPS/SOCKS5 代理服务器 - 使用 docker compose profile 管理 proxy 服务 配置方式: - USE_PROXY=true 启用代理 - ALL_PROXY/HTTP_PROXY/HTTPS_PROXY 自定义代理 - docker compose --profile proxy up 启动 warp 服务 文件变更: - docker-compose.yaml: 添加 warp-proxy 服务 - playwright-auth.ts: 添加代理配置逻辑 - example.env: 添加代理环境变量 - PROXY.md: 使用文档
3.2 KiB
3.2 KiB
DSAS CCA Backend - Proxy Configuration
代理功能说明
本应用支持可选的代理配置,用于绕过网络限制访问 engage.nkcswx.cn。
使用 Cloudflare WARP 代理
1. 启动带代理的服务
# 启动包含 warp-proxy 的服务
docker compose --profile proxy up -d
2. 配置环境变量
在 .env 文件中设置:
# 启用代理
USE_PROXY=true
# 使用 warp-proxy 服务(默认配置,无需修改)
# 或者自定义代理服务器
ALL_PROXY=socks5://warp-proxy:9091
3. 验证代理工作
# 查看日志确认代理已启用
docker compose logs -f app | grep "Using proxy"
使用自定义代理服务器
HTTP/HTTPS 代理
USE_PROXY=true
HTTP_PROXY=http://your-proxy:8080
HTTPS_PROXY=http://your-proxy:8080
SOCKS5 代理
USE_PROXY=true
ALL_PROXY=socks5://your-proxy:1080
需要认证的代理
USE_PROXY=true
ALL_PROXY=socks5://username:password@your-proxy:1080
环境变量说明
| 变量名 | 说明 | 默认值 |
|---|---|---|
USE_PROXY |
是否启用代理 | false |
ALL_PROXY |
通用代理服务器 | - |
HTTP_PROXY |
HTTP 代理服务器 | - |
HTTPS_PROXY |
HTTPS 代理服务器 | - |
Warp Proxy 服务配置
启动 Warp 服务
# 单独启动 warp-proxy
docker compose --profile proxy up warp-proxy
# 查看所有服务(包括 warp-proxy)
docker compose --profile ps
Warp 服务端口
- 内部端口: 9091 (SOCKS5 + HTTP 混合模式)
- 访问方式:
socks5://warp-proxy:9091
自定义 Warp 配置
可以在 docker-compose.yaml 中添加环境变量:
warp-proxy:
image: ghcr.io/mon-ius/docker-warp-socks:v5
environment:
# 自定义 Warp 配置
# WARP_MODE=premium # 如果需要 premium 模式
故障排除
代理未生效
- 检查
USE_PROXY=true是否已设置 - 确认 warp-proxy 服务正在运行:
docker compose ps - 查看应用日志:
docker compose logs app | grep proxy
Warp 连接失败
- 检查网络连接
- 重启 warp-proxy 服务:
docker compose --profile proxy restart warp-proxy - 查看 warp 日志:
docker compose logs warp-proxy
性能问题
如果代理导致请求变慢:
- 考虑关闭代理(如果不需要):
USE_PROXY=false - 或者使用更快的代理服务器
不启用代理的使用
默认情况下代理是关闭的。正常使用:
# 正常启动(不使用代理)
docker compose up -d
# 或者明确指定不使用代理
USE_PROXY=false docker compose up -d
注意事项
- 首次启动: 如果使用代理,首次启动可能会慢一些,因为需要建立 Warp 连接
- cookies 刷新: 启用代理后,建议重新获取 cookies:
docker exec dsas-cca-backend bun run test/get-cookies.ts - 网络要求: Warp 需要访问 Cloudflare 服务器,确保网络可达