avhost/go-imap-oauth2go-imap-oauth2是一个基于IMAP服务器作为认证后端的OAuth2服务提供商镜像。该镜像实现OAuth2协议标准流程,通过对接IMAP服务器验证用户身份,为客户端提供标准化的OAuth2授权服务。主要用途是简化依赖IMAP认证体系的应用集成,支持客户端通过OAuth2协议安全获取用户授权。
/authorize(授权端点)和/token(令牌端点)bashdocker pull go-imap-oauth2:latest
| 参数名 | 环境变量名 | 描述 | 是否必填 | 示例值 |
|---|---|---|---|---|
| --imapserver | IMAP_SERVER | IMAP服务器地址 | 是 | imap.gmail.com |
| --imapport | IMAP_PORT | IMAP服务器端口(143为非加密,993为SSL加密) | 是 | 993 |
| --imapdomain | IMAP_DOMAIN | IMAP域名,用于构建用户***地址(格式:user@imapdomain) | 是 | gmail.com |
| --clientdomain | CLIENT_DOMAIN | OAuth2服务自身域名(含协议),用于生成端点URL和验证回调地址 | 是 | [***] |
| --clientid | CLIENT_ID | OAuth2客户端标识,预分配给对接的客户端 | 是 | xxxxxxxx-xxxx-xxxx |
| --clientsecret | CLIENT_SECRET | OAuth2客户端密钥,客户端与服务端共享的安全凭证 | 是 | xxxxxxxxxxxxxxxxxxxxxxx |
| --port | PORT | 服务监听端口(默认9096) | 否 | 9096 |
bashdocker run -d \ --name go-imap-oauth2 \ -p 9096:9096 \ -e IMAP_SERVER=imap.gmail.com \ -e IMAP_PORT=993 \ -e IMAP_DOMAIN=gmail.com \ -e CLIENT_DOMAIN=[***] \ -e CLIENT_ID=your-client-id-here \ -e CLIENT_SECRET=your-client-secret-here \ -v /path/to/ssl/cert.pem:/etc/ssl/certs/server.crt:ro \ -v /path/to/ssl/key.pem:/etc/ssl/private/server.key:ro \ go-imap-oauth2:latest
说明:容器默认使用SSL模式启动,需通过
-v参数挂载有效的SSL证书(公钥server.crt和私钥server.key)到容器内/etc/ssl/certs/和/etc/ssl/private/目录。
创建docker-compose.yml文件:
yamlversion: '3' services: oauth2-server: image: go-imap-oauth2:latest container_name: go-imap-oauth2 ports: - "9096:9096" environment: - IMAP_SERVER=imap.gmail.com - IMAP_PORT=993 - IMAP_DOMAIN=gmail.com - CLIENT_DOMAIN=[***] - CLIENT_ID=your-client-id-here - CLIENT_SECRET=your-client-secret-here - PORT=9096 volumes: - ./ssl/cert.pem:/etc/ssl/certs/server.crt:ro - ./ssl/key.pem:/etc/ssl/private/server.key:ro restart: unless-stopped
启动服务:
bashdocker-compose up -d
客户端需配置以下OAuth2端点对接服务:
https://<服务域名或IP>:9096/authorizehttps://<服务域名或IP>:9096/token客户端请求时需携带预配置的CLIENT_ID和CLIENT_SECRET,并确保回调URL与CLIENT_DOMAIN匹配。
CLIENT_ID和CLIENT_SECRET为敏感信息,需通过环境变量或安全存储方式注入,避免明文暴露manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务