
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
SL.OnPremise.Agents.Collector是Sealights提供的本地收集器代理镜像,用于在本地环境中收集数据并将其发送至Sealights服务器。该镜像支持通过本地YAML配置文件或AWS S3 bucket加载配置,提供HTTP类型的收集器监听器和目标,实现收集器注册及足迹发送等功能。
配置文件格式(YAML)
收集器通过YAML格式的配置文件进行配置,示例如下:
yaml# servicePort:收集器API监听端口 servicePort: 80 # serviceName:收集器服务名称 serviceName: collector # serviceHost:收集器API绑定主机 serviceHost: 0.0.0.0 # collectors:收集器监听器列表 collectors: # name:收集器名称 - name: collector1 # type:收集器类型(当前仅支持"http") type: http # properties:收集器监听器属性 properties: # logLevel:收集器日志级别(debug/info/warn/error,默认info) logLevel: info # port:收集器监听端口 port: 8080 # serverUrl:Sealights服务器URL(用于收集器代理注册) serverUrl: https://<your-host>.sealights.co/ # target:收集器目标(用于发送足迹等) target: # name:目标名称 name: http-target # type:目标类型(当前仅支持"http") type: http properties: # logLevel:目标日志级别(debug/info/warn/error,默认info) logLevel: info # serverUrl:Sealights服务器API URL(用于发送足迹) serverUrl: https://<your-host>.sealights.co/api # token:Sealights认证令牌 token: <your-token>
配置加载方式
1. 本地配置文件加载
直接将配置文件(config.yaml)放置于收集器可访问路径。
2. AWS S3配置加载
通过AWS S3 bucket加载配置,需设置以下环境变量:
方式1:使用AWS访问密钥
方式2:使用AWS IAM角色(需参考https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html%EF%BC%89
1. 本地运行(非Docker方式)
下载收集器
从Sealights提供的URL下载收集器程序。
运行收集器
bash./collector serve
2. Docker镜像(本地配置)
拉取镜像
bashdocker pull sealights/on-prem-collector:latest
运行容器
bashdocker run -it --rm \ -v $(pwd)/config.yaml:/collector/config.yaml \ -p 80:80 -p 8080:8080 \ sealights/on-prem-collector:latest
注意:-p参数需根据config.yaml中配置的servicePort和collectors.properties.port进行调整
3. Docker镜像(S3配置)
拉取镜像
bashdocker pull sealights/on-prem-collector:latest
运行容器
执行命令(设置AWS环境变量):
bashdocker run -it --rm \ -p 80:80 -p 8080:8080 \ -e AWS_ACCESS_KEY_ID=<your-access-key-id> \ -e AWS_SECRET_ACCESS_KEY=<your-secret-access-key> \ -e AWS_DEFAULT_REGION=<your-default-region> \ -e AWS_S3_BUCKET=<your-s3-bucket> \ -e AWS_S3_FILE_PATH=<your-s3-file-path> \ sealights/on-prem-collector:latest
注意:-p参数需根据S3中配置文件的端口设置进行调整
4. Kubernetes部署
创建ConfigMap(配置文件)
yamlapiVersion: v1 kind: ConfigMap metadata: name: collector-config data: CONFIG: |- servicePort: 80 serviceName: collector serviceHost: 0.0.0.0 collectors: - name: http1 type: http properties: logLevel: info port: 8080 serverUrl: https://<your-host>.sealights.co/ target: name: http type: http properties: logLevel: info serverUrl: https://<your-host>.sealights.co/api token: <your-token>
创建Service(服务暴露)
yamlapiVersion: v1 kind: Service metadata: name: collector spec: ports: - name: http-80 port: 80 protocol: TCP targetPort: 80 - name: http-8080 port: 8080 protocol: TCP targetPort: 8080 selector: app: collector type: ClusterIP
创建Deployment(部署)
yamlapiVersion: apps/v1 kind: Deployment metadata: name: collector labels: app: collector spec: replicas: 1 selector: matchLabels: app: collector template: metadata: labels: app: collector spec: containers: - name: collector image: sealights/on-prem-collector:latest volumeMounts: - name: config-volume mountPath: ./collector/config ports: - containerPort: 8080 name: http-8080 - containerPort: 80 name: http-80 volumes: - name: config-volume configMap: name: collector-config items: - key: CONFIG path: config.yaml
执行部署
bashkubectl apply -f configmap.yaml # 假设ConfigMap文件名为configmap.yaml kubectl apply -f service.yaml kubectl apply -f deployment.yaml
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务