altinity/edge-proxyAltinity Edge Proxy 是一个专为边缘计算和分布式系统设计的轻量级代理服务镜像。该镜像封装了边缘代理核心功能,旨在简化分布式环境中的请求处理流程,通过统一入口管理资源访问,提升系统的可扩展性、安全性和资源利用率。主要用于边缘节点与中心服务间的流量转发、负载均衡及访问控制场景。
bashdocker run -d \ --name edge-proxy \ -p 8080:8080 \ -e PROXY_LISTEN_ADDR=:8080 \ -e ROUTE_CONFIG='[{"path":"/api/*","targets":["[***]","[***]"],"strategy":"round_robin"}]' \ altinity/edge-proxy:latest
yamlversion: '3.8' services: edge-proxy: image: altinity/edge-proxy:latest container_name: edge-proxy ports: - "8080:8080" - "8443:8443" # HTTPS端口 environment: - PROXY_LISTEN_ADDR=:8080 - TLS_ENABLE=true - TLS_CERT_PATH=/etc/edge-proxy/cert.pem - TLS_KEY_PATH=/etc/edge-proxy/key.pem - LOG_LEVEL=info volumes: - ./config:/etc/edge-proxy # 挂载配置文件目录 - ./certs:/etc/edge-proxy/certs # 挂载TLS证书 restart: unless-stopped
| 环境变量名 | 描述 | 默认值 |
|---|---|---|
PROXY_LISTEN_ADDR | 代理服务监听地址(格式::端口) | :8080 |
ROUTE_CONFIG | JSON格式的路由规则配置,定义路径与后端服务映射(见下方路由规则示例) | [] |
TLS_ENABLE | 是否启用TLS加密(true/false) | false |
TLS_CERT_PATH | TLS证书文件路径(启用TLS时必填) | - |
TLS_KEY_PATH | TLS私钥文件路径(启用TLS时必填) | - |
LOG_LEVEL | 日志级别(debug/info/warn/error) | info |
MAX_CONCURRENT_REQUESTS | 最大并发请求数限制 | 1000 |
json[ { "path": "/clickhouse/*", // 匹配路径前缀 "targets": ["[***]", "[***]"], // 后端服务列表 "strategy": "least_conn", // 负载均衡策略:round_robin/weighted/least_conn "headers": { // 自定义请求头 "X-Proxy": "edge-proxy" }, "timeout": "30s", // 请求超时时间 "allowed_ips": ["192.168.1.0/24", "10.0.0.1"] // IP白名单 }, { "path": "/api/*", "targets": ["[***]"], "strategy": "round_robin" } ]
如需复杂配置,可通过挂载配置文件实现。创建本地配置文件 config.yaml,内容示例:
yamllisten_addr: ":8080" tls: enable: true cert_path: "/etc/edge-proxy/certs/cert.pem" key_path: "/etc/edge-proxy/certs/key.pem" routes: - path: "/clickhouse/*" targets: - "[***]" - "[***]" strategy: "least_conn" timeout: "30s" log: level: "info" format: "json"
启动容器时挂载配置文件:
bashdocker run -d \ --name edge-proxy \ -p 8080:8080 \ -v ./config.yaml:/etc/edge-proxy/config.yaml \ -v ./certs:/etc/edge-proxy/certs \ altinity/edge-proxy:latest --config /etc/edge-proxy/config.yaml
MAX_CONCURRENT_REQUESTS参数,并监控容器资源使用情况
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务