
datacatering/duckdbDuckDB Docker镜像是DuckDB嵌入式分析数据库的容器化部署方案,构建自GitHub仓库 data-catering/duckdb-docker。该镜像旨在简化DuckDB的部署流程,提供无需手动配置依赖即可快速启动的运行环境,支持命令行交互与Web UI访问,适用于本地开发、数据分析及快速功能验证场景。
-it)直接执行SQL命令,便捷进行数据查询与分析。-ui参数启动内置Web UI,提供可视化操作界面(访问端口4213)。通过Docker直接启动DuckDB交互终端:
shelldocker run -it datacatering/duckdb:v1.4.0
参数说明:
-i:保持标准输入打开,支持交互-t:分配伪终端,模拟终端环境通过-ui参数启动内置Web UI,支持浏览器访问:
shelldocker run --rm --net host -it datacatering/duckdb:v1.4.0 -ui
操作步骤:
http://localhost:4213 进入Web UI参数说明:
--rm:容器停止后自动删除,避免残留资源--net host:使用主机网络模式,确保容器内Web服务端口(4213)直接映射到主机-ui:启动Web UI服务借助insta-infra工具链快速部署:
shell# 克隆insta-infra仓库并进入目录(假设已完成前置配置) ./run.sh duckdb
注:insta-infra为数据工具快速部署脚本集合,具体使用需参考其官方文档。
创建docker-compose.yml文件,配置DuckDB服务:
yamlversion: '3.8' services: duckdb: image: datacatering/duckdb:v1.4.0 network_mode: "host" # 启用主机网络以暴露UI端口 tty: true # 等效于`-t`参数 stdin_open: true # 等效于`-i`参数 command: -ui # 启动Web UI # 可选:挂载本地目录持久化数据(需创建./data目录) volumes: - ./data:/root/.duckdb
启动服务:
shelldocker-compose up
| 参数 | 说明 | 示例 |
|---|---|---|
-it | 启用交互终端模式 | docker run -it ... |
--rm | 容器退出后自动删除 | docker run --rm ... |
--net host | 使用主机网络,直接映射端口 | docker run --net host ... |
-v | 挂载本地目录(持久化数据) | -v ./data:/root/.duckdb |
| 参数 | 说明 | 示例 |
|---|---|---|
-ui | 启动Web UI服务(默认端口4213) | docker run ... -ui |
Docker Desktop主机网络配置:
在Docker Desktop(Windows/macOS)中使用--net host时,需确保已启用主机网络支持,具体配置参考Docker官方文档。
端口冲突处理:
Web UI默认使用4213端口,若主机该端口被占用,需修改网络配置或停止占用进程。
数据持久化:
默认情况下,容器内数据存储于临时文件系统,若需持久化,需通过-v参数挂载本地目录(如-v ./duckdb_data:/root/.duckdb)。
版本兼容性:
示例中使用标签v1.4.0,实际部署时需根据需求指定DuckDB版本,可通过Docker Hub查看可用标签。
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务