Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

FlexDeploy can be configured to automatically build a Docker image as a part of the building process. 

Image Removed

This configuration is to be done for each stream providing a groovy script for Docker Image name and specifying if the image should be automatically built and pushed at the end of the build request. If it is not specified to build the image automatically, the image can still be built by a workflow step invoking the dockerBuildProjectImage operation of the FlexDeployDockerPlugin.Either way, the build workflow execution will store a reference to the built Docker Image which is available on the Artifacts tab of the workflow execution screen.

Image Removed

The build instance must be a Docker host to use this feature, and the  dockerBuildProjectImage operation of the FlexDeployDockerPluginmust be associated to the build instance. See Creating and Editing Instances for more information on how to add a plugin operation to an Instance.

Optionally, a path to Dockerfile can be provided. If it is empty, a default Dockerfile in a project source checkout folder is expected. If the checkout folder is empty, then a Dockerfile is expected in the root of the FD_TEMP_DIR. A Dockerfile must be present to build an image. This behavior changed slightly in 5.0.3 beta. Previously, the location was expected to be in FD_TEMP_DIR/FD_PROJECT_NAME.As of FlexDeploy 6.0.0.0 the way Containers are configured has changed completely. There is no longer specific pages for Docker and Kubernetes configurations on the project. Docker, Kubernetes and Helm plugins have now been updated to use project properties and plugin inputs putting them in line with other plugins. This makes configuration a bit less confusing, if you are already familiar with FlexDeploy concepts.

Additionally a container blueprint has been created to make the process even simpler. It is highly recommended you use the container blueprint. For more information on blueprints check out the blueprints page.

Info

See the migration guide for steps on migrating.

Image Settings/Build

Image name (including repository) and image tag are now configurable as project properties. Several new variables have also become available with project properties, including the stream name, stream attributes, and project version. Most of the functionality previously available should be achievable with these additions. See the Docker plugin guide for details.

Container Settings/Deploy

After building the image there are 3 options to consider for deployment. Deploying via kubectl or Helm to a Kubernetes node. Or running the docker container directly. Check out the plugin guides for more info on how to use these:

Image Scanning

FlexDeploy supports local image scanning out of the box with the Anchore plugin. The only requirement is docker being installed on your build server. See the Anchore plugin guide for configuration details.

Info

Scans can also be executed as a Pre-deploy Workflow. This has the added benefit of creating approval tasks from the scan results.

Container Status/Monitoring

FlexDeploy no longer has the ability to monitor the status of containers as of FlexDeploy 6.0.0.0