
RADAR-base Data Uploader 是一个Web应用程序,用于向RADAR-Base平台上传数据。它包含一个Kafka Connect源连接器,能够处理上传的数据,将其解析为适当的格式并发送到Kafka。
主要用途:
该项目包含三个核心组件:
!https://raw.githubusercontent.com/RADAR-base/radar-upload-source-connector/master/docs/assets/Selection_003.png
!https://raw.githubusercontent.com/RADAR-base/radar-upload-source-connector/master/docs/assets/Selection_010.png
!https://raw.githubusercontent.com/RADAR-base/radar-upload-source-connector/master/docs/assets/Selection_011.png
!https://raw.githubusercontent.com/RADAR-base/radar-upload-source-connector/master/docs/assets/Selection_012.png
RADAR-base Data Uploader适用于以下场景:
要从源代码安装功能完整的RADAR-base数据上传器,请使用根目录下的docker-compose.yml:
bashdocker-compose up -d --build
注意:此部署不包括完整的RADAR-Base堆栈。有关完整安装指南,请访问https://github.com/RADAR-base/RADAR-Docker%E6%88%96https://github.com/RADAR-base/RADAR-Kubernetes%E3%80%82
要使用数据上传器,您需要在环境的ManagementPortal应用程序上拥有一个账户。如果没有,请向系统管理员申请。
有关更多信息,请参阅详细步骤指南(含截图)。
配置RADAR-base Data Uploader涉及配置上述三个组件。
将etc/upload.yml.template复制到etc/upload.yml,并修改数据库凭据和OAuth客户端凭据。以下是可能的属性和说明:
yamlbaseUri: "http://0.0.0.0:8085/upload/api/" managementPortalUrl: "http://managementportal-app:8080/managementportal/" jdbcDriver: "org.postgresql.Driver" jdbcUrl: "jdbc:postgresql://radarbase-postgresql:5432/uploadconnector" jdbcUser: "username" # 更改为您的数据库用户名 jdbcPassword: "password" # 更改为您的数据库密码 additionalPersistenceConfig: "hibernate.dialect": "org.hibernate.dialect.PostgreSQL95Dialect" enableCors: yes # 如果要为此组件启用CORS过滤器,请指定yes clientId: "radar_upload_backend" # 配置您的OAuth客户端ID clientSecret: "secret" # 配置客户端密钥 sourceTypes: # 支持上传数据的数据源类型 - name: phone-acceleration topics: - android_phone_acceleration contentTypes: - text/csv timeRequired: false sourceIdRequired: false configuration: setting1: value1 setting2: value2 - name: acceleration-zip topics: - android_phone_acceleration contentTypes: - application/zip timeRequired: false sourceIdRequired: false # 其他数据源类型配置...
如果在启动服务后修改了upload.yml文件,请重启服务:
bashdocker-compose restart radar-upload-backend
添加对新设备类型的支持
要添加对其他设备类型的支持,请在sourceTypes列表中添加一个新的sourceType条目。单个sourceType条目定义如下:
yaml- name: acceleration-zip # 数据源或设备的唯一标识符 (*必需) topics: # 要发送数据的主题列表 - android_phone_acceleration contentTypes: # 数据的内容类型 - application/zip timeRequired: false # 是否需要用户提供上传的日期时间(例如,当数据没有时间戳时) sourceIdRequired: false # 如果source-id是上传数据的必需项,请指定true
将etc/source-upload.properties.template复制到etc/source-upload.properties,并修改OAuth客户端凭据和支持的转换器类。以下是可能的属性和说明:
| 名称 | 描述 | 类型 | 默认值 | 有效值 | 重要性 |
|---|---|---|---|---|---|
| upload.source.poll.interval.ms | 轮询要处理的记录的频率 | long | 60000 | 低 | |
| upload.source.queue.size | 记录队列的容量 | int | 1000 | 高 | |
| upload.source.client.id | 上传kafka连接器的OAuth Client-id | string | radar-upload-connector-client | 高 | |
| upload.source.client.secret | 上传kafka连接器的OAuth client-secret | string | 高 | ||
| upload.source.client.tokenUrl | ManagementPortal获取访问令牌的Token URL | string | 高 | ||
| upload.source.backend.baseUrl | radar-upload-backend的URL,上传的文件存储在此处 | string | [***] | 高 | |
| upload.source.record.converter.classes | 用于转换记录的类列表 | list | org.radarbase.connect.upload.converter.phone.AccelerometerConverterFactory | 扩展org.radarbase.connect.upload.converter.ConverterFactory的类 | 高 |
添加对新设备类型的支持
要添加对新设备类型的数据处理支持,请实现一个能够处理相应设备数据的ConverterFactory,并将类名添加到upload.source.record.converter.classes列表中。
配置radar-upload-frontend需要为docker容器配置正确的环境变量:
| 名称 | 描述 | 值 |
|---|---|---|
| VUE_APP_BASE_URL | Web应用程序的基本URL | /upload |
| VUE_APP_API_BASE_URL | radar-upload-backend的公布URL | http://localhost:8080/upload/api/ 或 [***] |
| VUE_APP_AUTH_API | ManagementPortal Authorization的公布URL | http://localhost:8080/managementportal/oauth 或 [***] |
| VUE_APP_AUTH_CALLBACK | 发送authorization_code的回调URL。这应该在ManagementPortal上正确配置 | http://localhost:8080/upload/login 或 [***] |
| VUE_APP_CLIENT_ID | 在ManagementPortal上配置的Web应用程序的OAuth客户端ID | radar_upload_frontend |
后端应用程序负责存储上传的文件并管理其他状态。它提供API接口供前端调用,处理文件存储、元数据管理和与Kafka连接器的交互。后端应用程序还负责与ManagementPortal集成,处理用户认证和授权。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
docker search 限制
站内搜不到镜像
离线 save/load
插件要用 plugin install
WSL 拉取慢
安全与 digest
新手拉取配置
镜像合规机制
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务