Skip to main content

First Time Deployment of war file to IBM Cloud

In this post, I will put a very basic deployment of Java war file on the IBM Cloud. Previously, IBM Cloud was known as IBM Bluemix. But in this post, I will prefer using the IBM Cloud and not the bluemix. I was facing problem while deploying the war file on the IBM Cloud for the first time. I am not a DevOps person who knows about the servers as well. But my job was to deploy the application on the IBM Cloud I need to do it. So, I tried googling around but have no idea about how to do it. There are some examples are given but they are not so basic to be understood by a developer who wants to deploy the application in Cloud.

But I manage to do it. And I will explain all the steps that are needed to deploy the application to the Cloud. The application I am going to deploy is the Spring Boot application.

Requirements

1. IBM Cloud account.
2. IBM Bluemix CLI
3. war file (spring-boot application)

IBM Cloud Setup

After signing for IBM Cloud, go to the IBM Cloud Dashboard. IBM Cloud provides you with some free applications to test your application. From there select the filter:lite. You will see some of the free applications provided by the IBM.

Since we are using the Java we will select the liberty-for-java from there.



Now, it will ask for the name and other information. Enter the required one and it will create a Java profile in the cloud for you. Your Java environment is ready to be used by your application. You will see your dashboard as shown below after you have created a liberty-for-java app.



Yes, that's it. No other requirement is there. Now download the IBM Bluemix CLI client and setup it. It is a simple command line tool for interacting with the cloud.


War file Deployment on IBM Cloud

Go to the directory where your war file is kept and follow the below steps to deploy your application on cloud.

  1. Enter bluemix api https://api.xx-xx.bluemix.net on command. Here xx-xx is specific to the user. You have to see what your server is providing you.
  2. Then login to bluemix using the below command.
    1.  bluemix login -u <username> -o <organization> -s <space> Here:
      1. username is mostly email id.
      2. the organization is also your email id until and unless you have paid account and created other.
      3. space is mostly dev unless otherwise created a new one
  3. Then enter the final command that will upload the war file to the cloud.
    1. bluemix app push <appname> -b <buildpack> -p <war file> Here:
      1. appname is the name of the application you have created when you create a liberty for Java profile.
      2. for buildpack, we will be using liberty-for-java, as our application is Java based.
      3. In the end, the name of the war file.

After deployment, you will see that your instance is up and running. Your application is deployed successfully in the cloud.


You can visit your application by clicking the Visit Your URL link. Hope it helps some of my fellow friends struggling with deployment on IBM Cloud

Comments

Post a Comment

Popular posts from this blog

Getting height and width of image in Java

Yesterday I was working on something that requires manipulation of image for getting its properties. After searching over the internet I found a very intersting class on Java i.e ImageIO and BufferedImage class. These classes are good enough to manipulate images. there are many other claases also. But what I need i got it from these. I found many developers searching over internet for getting properties of image and there is no good small example for that. Thats why I thought why not creating a simple code to manipulate the image and help the developers. Here is the small code that helps to get the height and width of the image. Enjoy it!! import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; import javax.imageio.ImageIO; public class GetImage { public static void main(String[] args) { try { File f = new File("E:/Vinod/Docs/Pics/krishna_01.jpg"); BufferedImage image = ImageIO.read(f); int height = image.getHeight(); in...

SSL in Spring Boot using GoDaddy certificate on EC2

In this article, we will be going to see how we can achieve the HTTPS in the spring boot application . You will get lots of items on how to use the self-generated certificate with Spring Boot. But today we are going to use the CA generated certificates with the Spring Boot so that our application will work on HTTPS. We need the following things to work: CA certificates including, private key and certificate. In this article, we are using the GoDaddy wild card certificate. Spring Boot application OpenSSL library Convert the certificate and private key to PKCS 12 First of all, we need to convert the CA certificate to .p12 format . We need to have OpenSSL on the system to work with command. Also, we need to have all files in the same directory where we are running this command. The command required to covert the same: openssl pkcs12 -export -in [ceritificate-name] -inkey [private-key] -name [host] -out [new-file.p12] Here replace the values: [ceritificate-name] with...

Struts 2 Hello World Example

I had seen many new deveopers struggling against struts2 hello world example. So I decided to write a small example. Below are the required libraries to run this example which are easily availabel struts2-core-2.1.8.1 xwork-core-2.1.6 commons-logging-1.0.4 commons-logging-api-1.1 freemarker-2.3.8 ognl-2.7.3 commons-fileupload-1.2 The structure of the applictaion which I am following is (Eclipse IDE) Struts2Demo |---src | |----org | | |----vinod | | | |----action | | | | |----HelloWorld।java |---struts.xml |---WebContent | |---jsp | |---HelloWorld।jsp |---index.jsp |---WEB-INF | |---lib | |---web.xml Struts 2 in Action It is true that different IDE's use different structure, but at last when war is build they follow same structure. Lets start... HelloWorld.java import com.opensymphony.xwork2.ActionSupport; public class HelloWorld extends ActionSupport { String greetings = null; public String execute() throws Exception { setGreetings("Hel...