sogis/gretlgretl是一个专注于地理数据处理和ETL(抽取、转换、加载)的Docker镜像,基于GitHub项目sogis/gretl构建。该镜像集成了多种地理空间处理工具,旨在简化地理数据的自动化处理流程,支持从多种数据源抽取数据、执行转换操作,并加载至目标空间数据库或文件系统,适用于GIS(地理信息系统)工程师、数据分析师及需要处理地理空间数据的开发团队。
通过以下命令启动gretl容器,执行基本地理数据处理任务:
bashdocker run --rm -v /local/input:/data/input -v /local/output:/data/output sogis/gretl:latest
-v /local/input:/data/input:挂载本地输入目录至容器内/data/input,用于读取待处理数据。-v /local/output:/data/output:挂载本地输出目录至容器内/data/output,用于存储处理结果。sogis/gretl:latest:使用最新版本的gretl镜像。可通过环境变量或挂载配置文件(如gretl-config.yml)自定义处理流程。常用环境变量说明:
| 环境变量 | 描述 | 默认值 |
|---|---|---|
INPUT_DIR | 容器内输入数据目录 | /data/input |
OUTPUT_DIR | 容器内输出数据目录 | /data/output |
DB_CONNECTION | 目标空间数据库连接字符串 | 无(可选) |
LOG_LEVEL | 日志级别(DEBUG/INFO/WARN/ERROR) | INFO |
示例:指定数据库连接并启用DEBUG日志
bashdocker run --rm \ -v /local/input:/data/input \ -v /local/output:/data/output \ -e DB_CONNECTION="postgresql://user:pass@db-host:5432/dbname" \ -e LOG_LEVEL="DEBUG" \ sogis/gretl:latest
通过挂载自定义gretl-config.yml配置文件,定义复杂ETL流程(如多步骤转换、条件判断等)。配置文件示例:
yamlsteps: - name: "convert_shapefile_to_geojson" type: "ogr2ogr" input: "${INPUT_DIR}/data.shp" output: "${OUTPUT_DIR}/data.geojson" options: "-f GeoJSON" - name: "load_to_postgis" type: "pg2pg" input: "${OUTPUT_DIR}/data.geojson" db_connection: "${DB_CONNECTION}" table: "target_table" overwrite: true
启动容器时挂载配置文件:
bashdocker run --rm \ -v /local/input:/data/input \ -v /local/output:/data/output \ -v /local/config/gretl-config.yml:/app/config/gretl-config.yml \ -e DB_CONNECTION="postgresql://user:pass@db-host:5432/dbname" \ sogis/gretl:latest
完整配置与高级用法请参考官方GitHub仓库:[***]
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务