The HPE Cloud Service Automation (CSA) out-of-the-box integration with Docker allows service designs to include docker components. This adds the power of CSA automation to assets from a Docker Hub or a private Docker respository. CSA's integration includes three out-of-the-box Docker components:
- Docker image: This component will pull the specified image and start a container based on that image by running the specified run arguments and launch commands.
- Docker file: This component will build a Docker image using a specified Docker file and build arguments then runs the image using the specified run arguments.
- Docker file from SCM: This component will build a Docker image from a compressed file that contains Dockerfile and other required files used to build the image. This compressed file is saved and then downloaded from a source control management system. These Docker images are built with build arguments, a container and run arguments. The component supports bzip2, gzip, and xz compressed file formats.
These docker images can be deployed on servers stood up through vCenter templates, Amazon EC2 AMIs and HPE Public Cloud images as long as they have Docker support prebuilt into them. Docker containers can also be deployed on existing servers by using the CSA Existing Server component as long as SSH access and Docker support are installed.
The Docker image component may retrieve an image from a private repository hosted within Docker Hub, using the specified dockerUsername, dockerPassword, and dockerEmail properties. Some of the resulting Docker container's properties are returned and available in the respective deployedContainerID, deployedContainerIP, and deployedContainerPorts properties.
The Docker file component uses the Dockerfile specified within the dockerFileInput property to construct a Docker container. Some of the resulting Docker container's properties are returned and available in the respective deployedContainerID, deployedContainerIP, and deployedContainerPorts properties.
The Docker file from SCM component downloads a compressed file from the sourceControlUrl, using the sourceControlUser and sourceControlPassword properties. Some of the resulting Docker container's properties are returned and available in the respective deployedContainerID, deployedContainerIP, and deployedContainerPorts properties.
Creating a service design containing Docker component(s)
Create a service design with a Server component (vCenter Server in this case) having an association relationship with a Docker component. DockerBuildArgs are the arguments passed to the docker build command. The compressed file specified by sourceControlUrl is read by the docker build command from STDIN. DockerRunArgs are the arguments passed to the docker run command. Please note that the argument -d (run the container in detached mode) is specified by default within the underlying implementation. TimeOut specifies the timeout for the SSH commands executed on the Docker system. The default value is 900000 milliseconds (15 minutes).
Ability to pass environment variables
Docker facilitates the usage of environment variables to pass configuration data necessary to run applications within a container. This ability to pass necessary data to Docker containers is through the use of environment variables. This data could be constant values, or dynamic data originating from Docker and other non Docker component types in the service design. This necessitates some configuration of the respective Docker component to add parameter mappings to the environmentVariables Multiple Properties property for configuring the environment variables to be passed.
See the CSA 4.x Documentation Library for the latest versions of all CSA documentation in the 4.x branch. (HPE Passport is required.)
Additional HPE software product documentation can be found at https://softwaresupport.hpe.com/
You need to sign-in with HPE Passport credentials or register to use this site. Select Manuals from the Dashboards menu to view all available documents. Use the search and filter function to find documentation, whitepapers, and other information sources.
|Cloud Service Automation|