Discovering IBM Bluemix – Hello World
IBM Bluemix is a PaaS cloud (platform as a service) developed by IBM and based on Cloud Foundry.
Bluemix support many languages like Java, Node.js, Ruby Sinatra, Ruby on Rails, Go, PHP, Python and Staticfiles (html, css ..) ..etc. The langage choice could be extended to run Scala through the use of buildpacks.
Bluemix offers services related to iOS, MobileFirst Platform, Internet of Things, Watson, Hybrid Cloud, Open Architecture, Integration, DevOps, Web and Application, Data Management, Big Data, Business Analytics and Security.
Cloud Foundry is an open source cloud computing platform as a service (PaaS). It was also a Java PaaS for Amazon EC2 and it is primarily written in Ruby and Go.
As an Open PaaS, Cloud Foundry offers the flexibility to run it on a VM, private or public Cloud. The benefit of Cloud Foundry is the choice of available runtimes, frameworks and languages. Cloud Foundry supports Java, Ruby and Node.js runtimes along with grails, spring, rack, sinatra, rails, node, lift and play frameworks.
It supports integrated DevOps to build, run, deploy and manage applications on the cloud. IBM Bluemix is based on Cloud Foundry open technology and runs on SoftLayer infrastructure.
According to Wikipedia:
It took a team of people located in different places only 18 months to build Bluemix from initial concept to public availability.
To start using their services, you should create an account, if you are lazy like me, think about using a macro for forms next time 🙂
Choose the free service if you are willing to test.
Activate your account and go to the console.
I was having some difficulties accessing the console, meanwhile there were an announcment about some issues on authetification so I tried this url:
Creating an application
Click on dashboard and then click on “create an app”, choose “web” then “Python”.
A simple Python application that will get you up and running quickly with 375 GB-hours free each month.
I entered “testingBM” as an app name, so you should may be choose another name 🙂
After this step, you are guided with the instruction on the next page.
Click on “Download Starter Code”.
On your machine :
mkdir testingBM && cd testingBM
Then extract the content of the downloaded archive to the created folder:
~/testingBM $ tree . ├── manifest.yml ├── Procfile ├── README.txt ├── requirements.txt ├── server.py └── static ├── images │ └── newapp-icon.png ├── index.html └── stylesheets └── style.css 3 directories, 8 files
Connect to Bluemix
cf api https://api.eu-gb.bluemix.net
and log in using your email (replace dev by the namespace you’ve created )
cf login -u firstname.lastname@example.org -o email@example.com -s dev
and finally deploy the application
cf push testingBM
The application is now online, you can see it at:
Monitoring the application
Click on “Add a service or api” and add “Monitoring and Analytics”.
You will have access (under your namespace) to the added service.
Bluemix offers many other services and APIs as well as the possibility to create web/mobile application and manage the DevOps workflow/pipeline, from integration services to containers and virtual machines.
This tutorial was basically and introduction to Bluemix, nothing more. If you want to extend your knowledge, you can find other helpful resources on the official documentation.