Skip to content

Repository files navigation

CLOUD-NES STAC API - Infrastructure

Warning

This repository is work in progress, its content could change at any time.

This repository hosts material related to the deployment of the STAC API that will index the datasets hosted on SURF as part of the CLOUD-NES project.

The STAC API is based on the stac-fastapi-geoparquet implementation, which serves a static STAC catalog defined in data/collections.json.

Development

Testing the STAC API locally

  • Start a test STAC API instance:

    docker compose up test-app

    The STAC API should be running at http://localhost:8000/ (explore via the STAC Browser at this link).

  • Test the API with the same ROOT_PATH settings used in the production deployment (see below), where the API is served behind an nginx reverse proxy under the /stac/v1 path:

    docker compose up app

    The STAC API should still be reachable at http://localhost:8000/, but links in the responses will be generated as if served at /stac/v1, matching the production setup.

  • Stop all services, cleaning up stopped containers:

    docker compose rm --stop --force

Register SURF Research Cloud Application

In order to create the catalog item that allows one to deploy the CLOUD-NES STAC API via the SURF Research Cloud (SRC) portal, one needs first to create an application component:

  • On the SRC Portal, select the "Development" tab from the top menu, then select the "Components" tab and click "+" to add a new Component.
  • Fill in the following details, then click "CONTINUE":
  • Fill in the required component name (e.g. CLOUD-NES STAC) and description, then click "CONTINUE".
  • No component parameters are required, click "CONTINUE".
  • Fill in the required settings for CO ownership/visibility, then click "SUBMIT".

In order to create the catalog item based on the just-created component:

  • On the SRC Portal, select the "Development" tab from the top menu, then select the "Catalog Items" tab.

  • Search for the "Docker Environment" catalog item, select it and click "Clone". A wizard will guide you through the generation of a new catalog item based on the configurations of the "Docker Environment" catalog item.

  • Among the "Available Components" (lower menu), search for the previously-generated component (e.g. CLOUD-NES STAC) and click "SELECT". Make sure the list of the "Selected Components" (upper menu) includes the following elements, in this order:

    • SRC-OS
    • SRC-CO
    • SRC-Nginx
    • SRC-External plugin
    • Docker Environment
    • the previously-generated (e.g. CLOUD-NES STAC)

    then click "CONTINUE".

  • Fill in the required catalog item name / description, then click "CONTINUE".

  • Select the desired CO ownership / contact information, then click "CONTINUE".

  • Select the desired catalog item visibility, then click "CONTINUE".

  • Leave the cloud settings unchanged, then click "CONTINUE".

  • Leave the workspace settings unchanged, then click "SUBMIT".

Credits

About

STAC API for CLOUD-NES datasets on SURF

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages