apache/devlake本镜像为Apache Devlake(孵化中)项目的便捷二进制分发版本,基于官方开源项目构建,包含运行Devlake所需的完整二进制可执行文件。无需从源码编译,可直接部署使用,大幅降低部署门槛。
Devlake是一款开源DevOps数据平台,专注于从Git、Jira、Jenkins、GitHub Actions、GitLab CI、SonarQube等多源DevOps工具中收集、转换、存储和分析数据,通过标准化数据模型和预定义ETL(抽取-转换-加载)流程,生成关键DevOps指标(如DORA四大指标、SPOT指标),助力团队可视化研发流程、定位效能瓶颈、优化开发效率。
从Docker Hub拉取最新版本镜像(具体版本号可参考Apache Devlake官方文档):
bashdocker pull apache/devlake:latest
bashmkdir -p /path/to/devlake/config /path/to/devlake/data
devlake)及用户。bashdocker run -d \ --name devlake \ -p 8080:8080 \ # Web UI端口映射 -v /path/to/devlake/config:/app/config \ # 配置文件目录挂载 -v /path/to/devlake/data:/app/data \ # 数据持久化目录挂载 -e DB_HOST=your-mysql-host \ # 数据库主机地址 -e DB_PORT=3306 \ # 数据库端口 -e DB_USER=devlake-user \ # 数据库用户名 -e DB_PASSWORD=devlake-password \ # 数据库密码 -e DB_NAME=devlake \ # 数据库名称 apache/devlake:latest
在/path/to/devlake/config目录下创建config.yml,配置目标数据源(以GitLab为例):
yamlenvs: # GitLab连接参数 GITLAB_ENDPOINT: "[***]" # GitLab API地址 GITLAB_TOKEN: "glpat-xxx" # GitLab个人访问令牌(需具备api权限) GITLAB_PROJECTS: "100,200" # 需同步的项目ID列表(逗号分隔) connections: - name: gitlab-connection # 连接名称(自定义) type: gitlab # 数据源类型 endpoint: ${GITLAB_ENDPOINT} # 引用环境变量 token: ${GITLAB_TOKEN} projects: ${GITLAB_PROJECTS} transformation: enabled: true # 启用数据转换
重启容器使配置生效:
bashdocker restart devlake
http://localhost:8080在/path/to/devlake/config目录创建metrics.yml,定义自定义指标:
yamlmetrics: - name: custom_commit_frequency description: "自定义提交频率指标" expression: "count(commits) / days" # 指标计算表达式 data_source: "git" # 关联数据源 granularity: "day" # 时间粒度
版本升级时需同步数据库schema,执行容器内命令:
bashdocker exec -it devlake ./devlake db migrate up
修改/path/to/devlake/config/log4j2.xml调整日志级别(如设置为DEBUG):
xml<Root level="DEBUG"> <AppenderRef ref="Console"/> <AppenderRef ref="File"/> </Root>
docker-compose或Kubernetes进行编排,增强稳定性read_api权限,Jira需read权限)manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务