We have applications available for Node.js Express, Go Gin, Python Flask, Python Django, Java Spring, Java Liberty, and Swift Kitura.
In this sample, you will create a microservice using Express in Node.js, complete with standard best practices. A microservice is an individual component of an application that follows the microservice architecture - an architectural style that structures an application as a collection of loosely coupled services, which implement business capabilities. The microservice exposes a RESTful API matching a Swagger definition.
You can access the cloud native microservice capabilities at the following endpoints:
- The Swagger UI is running on:
/swagger/api-docs
- Health endpoint:
/health
You can deploy this application to IBM Cloud or build it locally by cloning this repo first. Once your app is live, you can access the /health
endpoint to build out your cloud native application.
Use the button above to deploy this same application to IBM Cloud. This option will create a deployment pipeline, complete with a hosted GitLab project and DevOps toolchain. You will have the option of deploying to either Cloud Foundry or a Kubernetes cluster. IBM Cloud DevOps services provides toolchains as a set of tool integrations that support development, deployment, and operations tasks inside IBM Cloud.
To get started building this application locally, you can either run the application natively or use the IBM Cloud Developer Tools for containerization and easy deployment to IBM Cloud.
- Install the latest Node.js 12+ LTS version.
Once the Node toolchain has been installed, you can download the project dependencies with:
npm install
To run your application locally:
npm run start
Your application will be running at http://localhost:3000
. You can access the /health
endpoint at the host. You can also verify the state of your locally running application using the Selenium UI test script included in the scripts
directory.
Install IBM Cloud Developer Tools on your machine by running the following command:
curl -sL https://ibm.biz/idt-installer | bash
Create an application on IBM Cloud by running:
ibmcloud dev create
This will create and download a starter application with the necessary files needed for local development and deployment.
Your application will be compiled with Docker containers. To compile and run your app, run:
ibmcloud dev build
ibmcloud dev run
This will launch your application locally. When you are ready to deploy to IBM Cloud on Cloud Foundry or Kubernetes, run one of the following commands:
ibmcloud dev deploy -t buildpack // to Cloud Foundry
ibmcloud dev deploy -t container // to K8s cluster
You can build and debug your app locally with:
ibmcloud dev build --debug
ibmcloud dev debug
- Learn more about augmenting your Node.js applications on IBM Cloud with the Node Programming Guide.
- Explore other sample applications on IBM Cloud.
This sample application is licensed under the Apache License, Version 2. Separate third-party code objects invoked within this code pattern are licensed by their respective providers pursuant to their own separate licenses. Contributions are subject to the Developer Certificate of Origin, Version 1.1 and the Apache License, Version 2.