openMetaData 二次试用
准备docker环境
略
下载docker-compose.yml
下载并更名为 docker-compose-openmetadata.yml
存放路径为:D:\LocalDocker
创建文件夹
D:\LocalDocker\docker_volumes\openmetadata\db-data
修改配置
db挂在卷路径
端口号,逐一检查配置中的端口号是否已经占用,比如mysql 3306 默认肯定得改
运行
docker-compose -f docker-compose-openmetadata.yml up -d
访问信息
openmetadata
http://localhost:8585
- 用户名:
admin@open-metadata.org - 密码:
admin
airflow
http://localhost:8180/
- 用户名:
admin - 密码:
admin

使用openmetadata
- Explore (探索)
- Data Quality (数据质量)
- Glossary (术语表)
- Teams (团队)
- Settings (设置):
- 数据源连接器配置。
然后就遇到问题, 这边数据库使用人大金仓pg模式, openmetadata 没有人大金仓驱动,直接使用postgre 配置连接信息后,遇到python连接出现的问题:
Could not determine version from string 'KingbaseES V008R006C008B0020 on aarch64-unknown-linux-gnu, compiled by gcc (GCC) 7.3.0, 64-bit'
配置项有限,暂时没有解决,等待后续解决。
尝试MYSQL 加载元数据成功。
附:docker 一些帮助
1:docker 端口配置
expose: 只是声明容器暴露的接口,并不与宿主机映射,通过同一网络下的服务名可以访问。 比如此处mysql 声明是 3306
ports: 配置宿主机与容器端口的映射,外部通过宿主机ip 和 配置的映射端口可以访问到服务。比如此处 是 9306:3306
2、docker 卷配置
volumes 定义:默认是 “命名卷” 在顶级 volumes 下配置的 ingestion-volume-dag-airflow 等,属于 Docker 命名卷(Named Volumes)的简化声明方式(未指定 driver、driver_opts 等高级配置,使用 Docker 默认的 local 驱动)。这种定义的作用是:提前 “注册” 这些卷名,确保多个 service 能共享同一个卷(而非各自创建匿名卷) 顶级 volumes 只是 “定义卷的元信息”,service 不会自动关联这些卷。必须在 service 的 volumes 字段中,通过 “卷名:容器内路径” 的格式,将卷挂载到容器的指定目录,才能让容器读写卷中的数据。
顶级命名卷(你定义的 ingestion-volume-dag-airflow 等)的宿主机存储位置,默认由 Docker 管理(无需手动配置),但可通过 driver_opts 自定义存储路径(仅针对 local 驱动,也是默认驱动)。
当你在顶级 volumes 中仅声明卷名(如 ingestion-volume-dag-airflow:),未配置任何参数时,Docker 会使用默认的 local 驱动,并将卷数据存储在宿主机的 /var/lib/docker/volumes/[卷名]/_data 目录下。
3、docker容器无权限操作问题处理
docker exec -it 0efb7a92554d /bin/bash 进入后默认是airflow用户,想装个编辑器vim 提示没有权限,直接使用sudo su - 切换,提示输入airflow用户密码, 空通过不了
处理方法,在执行 exec 时指定用户即可:
docker exec -it --user root 0efb7a92554d /bin/bash
