OpenMetadata本地Docker部署指南
前言
OpenMetadata是一个开源的元数据管理平台,它提供了一套完整的解决方案来收集、管理和探索数据资产。本文将详细介绍如何在本地环境中使用Docker快速部署OpenMetadata,帮助数据工程师和数据科学家快速搭建自己的元数据管理环境。
环境准备
系统要求
在开始部署前,请确保您的系统满足以下最低要求:
- 操作系统:支持MacOS、Linux和Windows(需WSL2)
- Docker版本:20.10.0或更高
- Docker Compose版本:v2.1.1或更高
- 资源分配:至少6GB内存和4个vCPU
环境检查
在终端中运行以下命令检查当前环境:
# 检查Docker版本
docker --version
# 检查Docker Compose版本
docker compose version
如果系统未安装这些组件,请先安装最新版本的Docker和Docker Compose。
部署步骤
1. 创建项目目录
首先创建一个专用目录来存放OpenMetadata的配置文件:
mkdir openmetadata-docker && cd openmetadata-docker
2. 获取Docker Compose文件
OpenMetadata提供两种数据库选项:MySQL和PostgreSQL。根据您的需求选择相应的配置文件:
MySQL版本
curl -sL -o docker-compose.yml https://releases.openmetadata.org/docker-compose.yml
PostgreSQL版本
curl -sL -o docker-compose-postgres.yml https://releases.openmetadata.org/docker-compose-postgres.yml
3. 启动服务
根据您选择的数据库版本,执行相应的启动命令:
MySQL版本
docker compose -f docker-compose.yml up --detach
PostgreSQL版本
docker compose -f docker-compose-postgres.yml up --detach
启动过程会拉取以下容器镜像:
- OpenMetadata服务器
- 元数据摄取服务
- Elasticsearch
- 数据库(MySQL或PostgreSQL)
4. 验证服务状态
使用以下命令检查容器是否正常运行:
docker ps
正常情况下,您应该看到四个容器正在运行,分别对应上述组件。
访问服务
OpenMetadata UI
服务启动后,您可以通过浏览器访问OpenMetadata的Web界面:
- 地址:
http://localhost:8585 - 默认管理员账号:
- 用户名:
admin@open-metadata.org - 密码:
admin
- 用户名:
首次登录后,建议您立即修改默认密码或创建新的管理员账户。
Airflow界面
OpenMetadata集成了Airflow用于元数据摄取任务管理:
- 地址:
http://localhost:8080 - 默认账号:
- 用户名:
admin - 密码:
admin
- 用户名:
您可以通过修改环境变量AIRFLOW_ADMIN_USER和AIRFLOW_ADMIN_PASSWORD来自定义Airflow的登录凭证。
日常管理
服务启停
在项目目录下执行以下命令管理服务:
# 停止服务
docker compose stop
# 启动服务
docker compose start
数据清理
如需完全移除服务并清理数据:
# 停止并移除容器
docker compose down
# 停止并移除容器及数据卷
docker compose down --volumes
注意:使用--volumes选项会永久删除所有存储的数据。
常见问题解决
-
Docker Compose命令不存在
请确保已正确安装Docker Compose V2版本。 -
网络冲突错误
尝试运行docker network prune清理未使用的网络。 -
Windows权限问题
在WSL2的/etc/wsl.conf中添加:[automount] options = "metadata,case=force"
安全建议
生产环境中,强烈建议:
- 修改所有默认密码
- 配置HTTPS加密
- 设置适当的用户权限
后续步骤
成功部署后,您可以:
- 探索OpenMetadata的各种功能
- 集成更多数据源连接器
- 通过API扩展平台功能
通过本指南,您已经成功在本地部署了OpenMetadata平台,可以开始探索元数据管理的强大功能了。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



