IBM Cloud Code Engine provides a platform to unify the deployment of all of your container-based applications. Code Engine helps developers by hiding many of the complex tasks like configuration, dependency management etc. Code Engine simplifies container-based management and enables you to concentrate on writing code. It also makes available many of the features of a serverless platform, such as "scale-to-zero". The application code is stored in source control along with its Dockerfile. If you have not yet created a Code Engine project, the toolchain automatically generates one during deployment. Any code changes detected in the Git repo are automatically built, validated, and deployed into the Code Engine project. For more information, refer to the Code Engine documentation.
You can continuously deliver a secure Code Engine app to a Code Engine project. Learn how to create a "Hello World" application that uses Docker, Node.js, and a DevOps toolchain. The app comes preconfigured for continuous delivery with the following features:
- Source control
- Issue tracking
- Online editing
- Deployment to IBM Code Engine
- Make sure the account that creates the toolchain pipeline based on the Code Engine template has proper permissions in the account. See "Integrating Code Engine workloads with Continuous Delivery" to learn more.
- Optional: Install the IBM Cloud CLI and the IBM Cloud Code Engine plug-in for managing Code Engine projects and applications on your local system.
- Optional: Create a project. If you do not create one, the toolchain will create one for you with the project name you enter.
- To get started, click Create toolchain:
- You can use the default settings, or make changes as needed.
- Under Tool Integrations, select Delivery Pipeline.
- Enter your IBM Cloud API key, or generate a new API key by clicking Create.
- Confirm the container registry region, container registry namespace, Code Engine region, Code Engine resource group, and Code Engine project name.
- Click Create.
The following best practices are implemented automatically upon app creation:
- Sanity check the Dockerfile before image creation.
- Build a container image on every Git commit, setting a tag based on build number, time stamp, and commit ID for traceability.
- Use a private image registry to store the image, and automatically configure access permissions for target cluster deployment by using API tokens that can be revoked.
- Insert the image tag into the deployment manifest automatically.