Sign inSign up

fiware/mintaka

By fiware

•Updated 10 months ago

implementation of the NGSI-LD temporal retrieval api.

Image
0

10K+

fiware/mintaka repository overview

⁠Mintaka

FIWARE Core Context Management License badge Docker badge NGSI-LD badge Coverage Status Test CII Best Practices Known Vulnerabilities

Mintaka is an implementation of the NGSI-LD⁠ temporal retrieval api. It relies on the Orion-LD Context Broker⁠ to provide the underlying database. The NGSI-LD specification is a living, changing document, and the latest Orion-LD beta release is nearly feature complete to the 1.3.1 ETSI specification.

For more information on Mintaka, please refer to its github repo⁠

⁠Tags

All images are created using the CI pipeline⁠. We create the following types of tags:

Tag patternExampleDescription
<SEM_VER>0.0.1Release version, equal to the github release
latestlatestLatest released image. Be careful, this is bleeding edge and not guranteed to be stable
<SEM_VER>-PRE-<PR_NUMBER>0.0.2-PRE-12Prerelease version. <SEM_VER> is the next release version, <PR_NUMBER> the number of the associated PR.

Each tag exists in 3 versions:

  • no postfix: the default image, based on gcr.io/distroless/java:11
  • -distroless postfix: image based on gcr.io/distroless/java:11, f.e. 0.0.1-distroless
  • -rhel postfix: image based on the Redhat certified base-image⁠ openjdk-11-rhel7, f.e. 0.0.1-rhel

⁠How to use

Mintaka relies on a TimescaleDB⁠, that is populated by Orion-LD⁠. A sample setup can be found below, please check github⁠ for more options:

version: "3.5"
services:
  # Orion is the context broker
  orion-ld:
    image: fiware/orion-ld
    hostname: orion
    # sometimes the initial startup fails due to a weird timescale behaviour
    restart: always
    environment:
      - ORIONLD_TROE=TRUE
      - ORIONLD_TROE_USER=orion
      - ORIONLD_TROE_PWD=orion
      - ORIONLD_TROE_HOST=timescale
      - ORIONLD_MONGO_HOST=mongo-db
    depends_on:
      - mongo-db
      - timescale
    networks:
      - default
    ports:
      - "1026:1026"
    command: -logLevel DEBUG
    healthcheck:
      test: curl --fail -s http://orion:1026/version || exit 1
      interval: 30s
      retries: 15


  # Databases
  mongo-db:
    image: mongo:4.0
    hostname: mongo-db
    expose:
      - "27017"
    ports:
      - "27017:27017" # localhost:27017
    networks:
      - default
    command: --nojournal
    volumes:
      - mongo-db:/data
    healthcheck:
      test: |
        host=`hostname --ip-address || echo '127.0.0.1'`;
        mongo --quiet $host/test --eval 'quit(db.runCommand({ ping: 1 }).ok ? 0 : 2)' && echo 0 || echo 1
      interval: 30s

  timescale:
    image: timescale/timescaledb-postgis:latest-pg12
    hostname: timescale
    healthcheck:
      test: [ "CMD-SHELL", "pg_isready -U orion" ]
      interval: 15s
      timeout: 15s
      retries: 15
      start_period: 60s
    environment:
      - POSTGRES_USER=orion
      - POSTGRES_PASSWORD=orion
      - POSTGRES_HOST_AUTH_METHOD=trust
    expose:
      - "5432"
    ports:
      - "5432:5432"
    networks:
      - default

volumes:
  mongo-db: ~

⁠Configuration

Mintaka uses the Micronaut-Framework⁠. The following table lists the most important environment variables, please check the framework documentation⁠ for all available options.

Env-VarDescriptionDefault
MICRONAUT_SERVER_PORTServer port to be used for mintaka8080
MICRONAUT_METRICS_ENABLEDEnable the metrics gatheringtrue
ENDPOINTS_ALL_PORTPort to provide the management endpoints8080
ENDPOINTS_METRICS_ENABLEDEnable the metrics endpointtrue
ENDPOINTS_HEALTH_ENABLEDEnable the health endpointtrue
DATASOURCES_DEFAULT_HOSTHost of timescalelocalhost
DATASOURCES_DEFAULT_PORTPort of timescale5432
DATASOURCES_DEFAULT_DATABASEName of the default database, needs to coincide with orion-ldorion
DATASOURCES_DEFAULT_USERNAMEUsername to be used for db connectionsorion
DATASOURCES_DEFAULT_PASSWORDPassword to be used for db connectionsorion
LOGGERS_LEVELS_ROOTRoot log level of mintakaERROR

Tag summary

Content type

Image

Digest

sha256:efc679338…

Size

179.5 MB

Last updated

10 months ago

docker pull fiware/mintaka