WavebreakMediaMicro - Fotolia
As you may already know, IBM's Bluemix is a PaaS offering, which runs on IBM's SoftLayer data centers, IBM's laaS offering. It is an open cloud platform that provides you with a choice of cloud frameworks and application services. It also comes with a powerful command-line interface, along with integration tools that will help in your development and deployment processes. In this IBM Bluemix tutorial, we'll provide some tips on how to make using Bluemix a great experience for you.
With IBM's Bluemix, you are given a choice of runtimes from which to run your applications, including Tomcat, an open source Java web application server, and Liberty for Java. IBM WebSphere Liberty is just another Java Platform, Enterprise Edition application server. While it can deploy any Tomcat applications, it also offers support for many other Java web features, including Java Management Extensions. The runtimes are provided through the use of a buildpack, which is a set of scripts that perform the job of packaging your application, as well as the dependencies, into available droplets.
IBM Bluemix tutorial deployment
Looking at our dashboard, here are the choices that you have for deploying your first application:
In this example, we're going to choose SDK for Node.js. This buildpack provides a complete runtime for all your Node.js apps. Choose SDK for Node.js, and click on create. That's all there is to it. We're not going to get into the more advanced options in this IBM Bluemix tutorial, as we want to delve into some more interesting topics.
IBM Cloud Continuous Delivery
Let's look at an exciting feature that Bluemix provides: continuous delivery. When using continuous delivery, we are adopting a DevOps approach, which includes open toolchains to help automate the building and deployment of applications. These toolchains are integrated sets of tools that make development and the operations of your tasks repeatable and more manageable.
You can also choose to add a pipeline to an existing toolchain. Pipelines are actually managed by the toolchains. If you create a pipeline and do not have any existing toolchains, a default toolchain will be created for you. With the toolchain, you are able to expand the capabilities of your pipeline by integrating it with other tools and services.
Let's enable continuous delivery for this application. When you enable continuous delivery for a project, it creates DevOps toolchains for your project. This feature creates a Git repository, which is based on GitLab. Git is an open source change management system. When you create the toolchain, the Git repository will either be empty or contain the source code from you application. Toolchains can include open source tools, IBM Cloud services and third-party tools, such as GitHub, PagerDuty and Slack.
Just click on Enable to initiate continuous delivery on the application.
After it is enabled, you come across this dashboard. I like this view, because it clearly illustrates the different stages in a DevOps lifecycle (also known as the IBM Cloud Garage Method): Think, Code, Deliver and Run. First, we Think. This is the stage where you will take your ideas and write them down. Code is where we write the code and track changes to our project. As part of the toolchain, Bluemix provides access to the Orion integrated development environment (IDE), which is a tool that is used for editing code online, managing changes to Git and tracking deployment to Cloud Foundry. Deliver is the pipeline, where the fun work comes in. It all starts with a trigger, which can either be an API call or a change to the Git repository. The first stage will be to check out the code and make files available as artifacts. The test stage makes sure the changes do not break anything. The deployment stage actually makes the changes available. Run is the final stage. When Deliver is completed, your application should be running, and there are many options to run your application and get it on the internet, including:
- Cloud Foundry: This uses a Diego container to run the application in an isolated environment.
- Docker /Kubernetes: This enables you to package your application as a container and deploy it where needed.
What about a command-line interface? I know some developers that will never use browser-based tools. I can ensure you it's very easy to get started.
Just click on the Windows install dashboard to download.
After the download is complete, you run the install utility, and in moments, it is finished.
From here, I just went to the Windows command line.
Type bx login, put in your name and password, select your account and you are all ready to use your system. How easy is this IBM Bluemix tutorial?
What is great about Bluemix is the ease in which you can start to use the tools, whether it is through browser-based utilities or the command line. There is also a wealth of information available on the Bluemix site or through IBM Redbooks. Take the time to properly configure your environment, and you'll find it easier to get started with Bluemix.