How to create IBM Bluemix containers?

Before diving into details of creating IBM Bluemix containers lets understand what is a container.Lets assume you have a small development team.You want them to work on a project.In this case you have to install software on every one of them.Each of the system needs to be configured.

The developers should have all the dependencies set up in order to work on your project.This increases infrastructure cost as well as set up cost and time.Would not it be good to have a single runtime or package which you can install on every one’s system or better have that accessible to your development team over internet guarded by standard enterprise level security.

This lessen the development set up time and cost.If you are facing similar problem and want to cut down on it then IBM Container is the option.In this post we will cover steps of creating Bluemix container.

Step 1 : Select Bluemix Container type

Every container in Bluemix is contained within a space.So first you need to create a space.If you have not yet created space then you can read Bluemix getting started tutorial.Once you have created a space you can see multiple options under it.The options are CF Apps,Services,Container and Virtual Machines.

On Bluemix dashboard you will see all these four blocks.Click on the Container block.After you click on container block you will see three options.IBM currently provides three Container images

  • ibmliberty – Click on ibmliberty container image if you are planning to use JAVA.
  • ibmnode – Click on ibmnode container image option if you plan to use node.js.
  • Add your own – You can add your own Container image.

Bluemix Container templates

In this post we will cover the last two options.The creation flow for first two are same so we will discuss only about second one.So click on the ibmnode block.After you click on ibmnode block you will see some details displayed next to it.Click on continue button.

Step 2 : Bluemix ibmnode Container type

This step is applicable if you have chosen first two option.After selecting the Container type you will have two options

  • Single Container – As per IBM notes single container should be used for short lived processes.
  • Group Container – As per IBM notes scalable group should be used for long term processes that need high availability.

Single Container

Below are the options displayed for Single Container


Bluemix Single Container

  • Space – On Single Container option you need to select the space under which you want to create the container
  • Container Name – Enter the name of the container.You can enter anything meaningful here
  • Size – Enter the size of the container.Bluemix already has predefined sizes you can select them using simple drop down.
  • Public IP address – If you leave the public IP address unassigned then your single container will not be accessible.If you mention the IP address then your single container will be accessible from Internet.You can also mention the ports as well.

Scalable Group

Below are the options displayed for Scalable Group


Bluemix Scalable Group

  • Space – On Scalable Group option you need to select the space under which you want to create the container
  • Container Name – Enter the name of the container.You can enter anything meaningful here
  • Instances – Enter the number of instances you want running for that Scalable Group.
  • Size – You can select the size of scalable Group from sizes predefined by Bluemix
  • Host – you can mention the host name here.You can mention the custom domain name as well.But for testing purpose you can use mybluemix.net sub domain.For example if you enter testcontainer here as shown in image then the entire domain becomes testcontainer.mybluemix.net
  • Domain – You can select from predefined domain name from the drop down or you can mention your custom domain name
  • Enable automatic recovery – You can check this box to enable automatic recovery.If you enable this option then failed instances will auto recover.

After making above changes you can click on Create button.This will create your Bluemix Container.

Step 2 : Bluemix create your own Container type

Bluemix provides you luxury to create your own container image.After you click on this option Bluemix presents you a page which lists the steps to add your own container image.I am reproducing the steps here for your reference.All you need to have is a Docket image.

You can tag your docker image to Bluemix container.The commands are mentioned for your reference in the window displayed.The process is simple and works well.

Step 3 : Bluemix Container Dashboard

After following above steps you have created your Container.Bluemix will direct you to Container dashboard.Below image shows dashboard of testcontainer we created above.The dashboard shows container details and memory consumption.


Bluemix Container Dashboard

If you want to see more details about it like Memory Usage over a period of time or CPU usage over a period of time or Network usage over a period of time(bytes/second) then you can either click the setting icon or click on Monitor option on left hand side.

Bluemix graphically displays these parameters.You can change the time range and see performance of your Container over a period of time.You can also see Logs of your Container by clicking on the Logs options situated on left hand side.

Step 4 : Deleting Bluemix Container

There may be occasions you want to delete your container.While working on Bluemix Containers to write this post I have created Bluemix containers and have deleted them as well.Bluemix makes it extremely easy to delete a container.All you want is to click on delete button on Bluemix dashaboard.

Sometimes you may get message that Bluemix is unable to delete container due to some issues.I faced this problem multiple times.But you should not worry about it.There is no need to debug or waste time thinking about it.You can refresh the Bluemix dashboard page after sometime (may be half an hour).The container will not be present.

Conclusion

IBM Bluemix provides security,cloud benefits and provides enterprise level benefits to your Docker.The process of creating and managing docker is very easy (from Bluemix user interface only). You have to work with command line (installing them as well as run few commands) if you are planning to deploy your own Container image.

Currently out of box Bluemix has container image for Liberty Java and Node.js.We may see more options out of box going forward.Even the options present today will serve purpose of most users.

Leave a Comment