title |
description |
keywords |
Docker Template API reference |
Docker Template API reference |
application, template, API, definition |
This page contains information about the Docker Template API reference.
Service template definition
The following section provides information about the valid parameters that you can use when you create a service template definition.
apiVersion: v1alpha1
kind: ServiceTemplate
metadata:
name: angular
platforms:
- linux
spec:
title: Angular
description: Angular service
icon: https://cdn.worldvectorlogo.com/logos/angular-icon-1.svg
source:
image: docker.io/myorg/myservice:version
parameters:
- name: node
description: Node version
type: enum
defaultValue: "9"
values:
- value: "10"
description: "10"
- value: "9"
description: "9"
- value: "8"
description: "8"
- name: externalPort
description: External port
defaultValue: "8080"
type: hostPort
root
Parameter |
Required? |
Description |
apiVersion |
yes |
The api format version. Current latest is v1alpha1 |
kind |
yes |
The kind of object. Must be ServiceTemplate For services templates. |
metadata
Parameter |
Required? |
Description |
name |
yes |
The identifier for this service. Must be unique within a given library. |
platform |
yes |
A list of allowed target platforms. Possible options are windows and linux |
spec
Parameter |
Required? |
Description |
title |
yes |
The label for this service, as displayed when listed in docker template commands or in the application-designer |
description |
no |
A short description for this service |
icon |
no |
An icon representing the service. Only used in the Application Designer |
spec/source
Parameter |
Required? |
Description |
image |
yes |
The name of the image associated with this service template. Must be in full repo/org/service:version format |
spec/parameters
The parameters section allows to specify the input parameters that are going to be used by the service.
Parameter |
Required? |
Description |
name |
yes |
The identifier for this parameter. Must be unique within the service parameters. |
description |
no |
A short description of the parameter. Will be used as label in the Application Designer |
type |
yes |
The type of the parameter. Possible options are: string - The default type, with no validation or specific features. enum - Allow the user to choose a value included in a specific list of options. Must specify the values parameter. hostPort - Specify that this parameter is a port that is going to be exposed. Use port format regexp validation, and avoid duplicate ports within an application. |
defaultValue |
yes |
The default value for this parameter. For enum type, must be a valid value from the values list. |
values |
no |
For enum type, specify a list of value with a value/description tuple. |
Application template definition
The following section provides information about the valid parameters that you can use when you create a application template definition.
apiVersion: v1alpha1
kind: ApplicationTemplate
metadata:
name: nginx-flask-mysql
platforms:
- linux
spec:
title: Flask / NGINX / MySQL application
description: Sample Python/Flask application with an Nginx proxy and a MySQL database
services:
- name: back
serviceId: flask
parameters:
externalPort: "80"
- name: db
serviceId: mysql
- name: proxy
serviceId: nginx
root
Parameter |
Required? |
Description |
apiVersion |
yes |
The api format version. Current latest is v1alpha1 |
kind |
yes |
The kind of object. Must be ApplicationTemplate For application templates. |
metadata
Parameter |
Required? |
Description |
name |
yes |
The identifier for this application template. Must be unique within a given library. |
platform |
yes |
A list of allowed target platforms. Possible options are windows and linux |
spec
Parameter |
Required? |
Description |
title |
yes |
The label for this application template, as displayed when listed in docker template commands or in application-designer |
description |
no |
A short description for this service |
spec/services
This section lists the service templates used in the application.
Parameter |
Required? |
Description |
name |
yes |
The name of the service. It will be used for image name and for subfolder within the application structure. |
serviceId |
yes |
The id of the service to use (equivalent to the metadata/name field of the service) |
parameters |
no |
A map (string to string) that can be used to override the default values of the service parameters. |
Service configuration file
The file is mounted at /run/configuration
in every service template container and contains the template context in a JSON format.
Parameter |
Description |
ServiceId |
The service id |
name |
The name of the service as specified by the application template or overridden by the user |
parameters |
A map (string to string) containing the service’s parameter values. |
targetPath |
The destination folder for the application on the host machine. |
namespace |
The service image’s namespace (org and user) |
services |
A list containing all the services of the application (see below) |
Attributes
The items in the services list contains the following attributes:
Parameter |
Description |
serviceId |
The service id |
name |
The name of the service as specified by the application template or overridden by the user |
parameters |
A map (string to string) containing the service’s parameter values. |