# Redis Exporter Dockerfile FROM python:3.11-slim WORKDIR /app # 安装依赖 COPY requirements.txt . RUN pip install --no-cache-dir redis prometheus-client # 复制 exporter 代码 COPY src/functional_scaffold/core/metrics_redis_exporter.py . # 暴露端口 EXPOSE 8001 # 启动 HTTP 服务器提供指标 CMD ["python", "-c", "\ from http.server import HTTPServer, BaseHTTPRequestHandler; \ from metrics_redis_exporter import get_metrics; \ class MetricsHandler(BaseHTTPRequestHandler): \ def do_GET(self): \ if self.path == '/metrics': \ self.send_response(200); \ self.send_header('Content-Type', 'text/plain; version=0.0.4'); \ self.end_headers(); \ self.wfile.write(get_metrics()); \ else: \ self.send_response(404); \ self.end_headers(); \ def log_message(self, format, *args): pass; \ server = HTTPServer(('0.0.0.0', 8001), MetricsHandler); \ print('Redis Exporter 启动在端口 8001'); \ server.serve_forever()"]