You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

Overview

This page describes version 1 of the NDS Labs service specification. Example specifications can be found in the ndslabs-specs Github repository.

Service

FieldTypeDescription
keystringUnique identifier for the service (alpha-numeric only, lowercase)
labelstringLabel used for display
descriptionstringDescription used for display
imagestringDocker image path
ports

Port[]

List of ports exposed by this service (see below)
configConfig[]List of configuration options (see below)
volumeMountsVolumeMount[]Defines volume requirements for the service. Currently only one mount is supported per service.
dependsServiceDepencency[]List of dependencies (see below)
isStackboolIf true, the service is displayed as a top-level stack.
isServiceboolIf true, a Kubernetes service is created. If false, only a replication controller is created.
isPublicboolIf true, a NodePort is allocated for the defined ports.
isStandaloneboolIf true, the service deemed useful to operate alone (some dependencies of stacks are not useful outside of the stack)
readinessProbeReadyProbeProbe used to determine when a service is ready to receive traffic
argsstring[]Optional arguments to be passed to the container
commandstring[]Optional commands to be passed to the container.

 

Port

FieldTypeDescription
portintPort
protocolstringProtocol – must be one of "http" or "tcp". Determines whether a link is displayed on the NDSLabs UI

 

Config

FieldTypeDescription
namestringName of environment variables passed to container
valuestringDefault value of environment variable
labelstringLabel used for display in the NDSLabs UI
isPasswordboolWhether the field is a password for display in NDSLabs UI
canOverrideboolWhether the value can be overridden

 

VolumeMount

FieldTypeDescription
mountPathstringMount path
namestringName, currently must match the service key

 

ReadyProbe

FieldTypeDescription
typestringProbe type: must be one of "http" or "tcp"
pathstringProbe path for HTTP probes
portintProbe port
initialDelayintHow long to wait before starting probe
timeoutintHow long to wait before timing out

 

ServiceDependency

FieldTypeDescription
keystringUnique identifier of a child service
requiredboolWhether the service is required or optional
shareConfigboolIf true, configuration of the child service is injected into the parent container. This prevents needing to collect the same information twice.

 

 

  • No labels