卫星和其他地球观测数据的分析环境

datacube的Python项目详细描述


打开数据立方体核心

Build StatusCoverage StatusDocumentation Status

概述

开放数据立方体核心提供了集成的网格化数据 分析环境数十年分析就绪地球观测 多卫星及其他采集的卫星及相关数据 系统。

文档

参见user guide了解 datacube的安装和使用,以及api的文档。

Join our Slack如果你需要帮助 设置或使用数据立方体核心。

要求

系统

  • PostgreSQL 9.5+
  • Python3.5+

开发人员设置

  1. 克隆:
    • git clone https://github.com/opendatacube/datacube-core.git
  2. 创建一个python环境来在其中使用odc,我们建议将conda作为 处理python依赖项的最简单方法。
conda create -n odc -c conda-forge python=3.7 datacube pre_commit
conda activate odc
  1. 安装DataCube Core的开发版本。
cd datacube-core
pip install --upgrade -e .
  1. 安装pre-commit钩子以帮助遵循odc编码 使用git提交时的约定。
pre-commit install
  1. 运行单元测试+pylint

    ./check-code.sh

    (这个脚本近似于特拉维斯运行的脚本)。你可以 或者运行pytest您自己)

  2. (或)运行所有测试,包括集成测试。

    ./check-code.sh integration_tests

    • 假设在本地主机上运行一个名为

    agdcintegration

    • 否则将integration_tests/agdcintegration.conf复制到 ~/.datacube_integration.conf并编辑以自定义。

码头工人

Docker for Open Data Cube正处于开发的早期阶段,更多的文档和示例说明了 使用它很快就会到来。现在,您可以从 此存储库如下所述。

示例用法

有许多环境变量可用于配置opendatacube。 其中一些是内置在应用程序本身中的,而另一些是Docker特有的,并且 用于在启动容器时创建配置文件。

您可以使用如下命令生成图像:

docker build --tag opendatacube:local .

然后可以使用以下命令运行它:

docker run --rm opendatacube:local

如果不需要构建(也不应该构建),则可以使用以下命令从预构建的图像运行它:

docker run --rmopendatacube/datacube-core

使用环境变量启动容器的示例如下:

docker run \
   --rm \
   -e DATACUBE_CONFIG_PATH=/opt/custom-config.conf \
   -e DB_DATABASE=mycube \
   -e DB_HOSTNAME=localhost \
   -e DB_USERNAME=postgres \
   -e DB_PASSWORD=secretpassword \
   -e DB_PORT=5432\
   opendatacube/datacube-core

此外,还可以使用docker compose文件运行打开的数据立方体docker容器和postgres。 例如,您可以运行docker-compose up,它将启动postgres服务器并打开其旁边的数据多维数据集。 要在odc中运行命令,可以使用docker-compose run odc datacube -v system initdocker-compose run odc datacube --version

环境变量

下面的大多数环境变量应该是自解释的,不需要(尽管 建议您设置它们)。

  • DATACUBE_CONFIG_PATH-用于写入的配置文件的路径(ODC也用于读取)
  • DB_DATABASE-postgres数据库的名称
  • DB_HOSTNAME-postgres数据库的主机名
  • DB_USERNAME-Postgres数据库的用户名
  • DB_PASSWORD-用于Postgres数据库的密码
  • DB_PORT-postgres数据库公开的端口

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
图像处理Java 8 ImageIO在Linux中无法正确读取JPEG   spring如何用Java 1.4兼容版本替换@Resource注释   java Http请求参数类型传播   在web浏览器中看不到Java Maven Tomcatplugin web应用程序   jvm在Java中使用直接内存的目的是什么?   如何从列表转换为字符串java   java setAdapter gridview发送上下文   SwingJava。方法上的lang.NullPointerException   java什么是shell脚本、makefile和ant文件   当使用getGraphics()方法时,java JPanel图形会闪烁   java如何将迭代转换为递归?   java为什么我的抽屉菜单在同一个XML上有ConstraintLayout时没有响应?   java如何在图像上画一个圆?   Android studio:Rabbitmq:Error:java。lang.ClassNotFoundException:类io。千分尺。果心仪器找不到仪表注册表