Skip to content

NTIS Container Specification

The following is the NTIS container specification.

Building

CLI tool requirements:

  • Create a new container, and provide domain suffix.

  • Add user code via a github repository, or local directory that will expose an API surface, and name it. For example, /jukebox.

INFO

There can only be a single API surface, as multiple services can be added to a domain during deployment.

All services must listen on 8080.

  • All application code that interacts with services will use JSON and/or web-sockets for bi-directional communication using a local service resource locator in the network layer.

  • Add services from the NTIS service catalog and name for the service locator for example:

  • Postgres:Database - (MyDatabase / Process Type)

  • Microsoft:SignalIr - (SignalIR /Process Type)

  • Submit it to NTIS

  • Receive Status, Resubmit.

Deployment

  • Capability to provide a domain name on initiation, that provides the I.P. address to Homeland Security via a URL that is provided by the Commerce Department after Homeland Security provisioning.

Management

  • Manage permissions for managing the container via roles and personal profiles where a management URL is provided.

  • Ability to scale requests per minute on all services (including user code).

  • Provide requests per minute reporting for each service, with the ability to scale it. The container manager must manage memory and CPU based on usage patterns.

  • Manage the single storage volume. Storage volumes must have a file journal capability for all services, that can be rolled back in case of a catastrophic issue by time and date. All journal items must be human readable for analysis (JSON).

  • Receive storage volume details, and alerts to a personal profile.