diff --git a/Dockerfile b/Dockerfile
new file mode 100644
index 0000000000000000000000000000000000000000..b1be17a9430bbecc7dc16a644fb27092321bc6c7
--- /dev/null
+++ b/Dockerfile
@@ -0,0 +1,6 @@
+FROM openjdk:8
+MAINTAINER haridas <haridas.kakunje@tarento.com>
+
+ADD analytics-0.0.1-SNAPSHOT.jar analytics-0.0.1-SNAPSHOT.jar
+ENTRYPOINT ["java", "-jar", "/analytics-0.0.1-SNAPSHOT.jar"]
+EXPOSE 8091
diff --git a/Dockerfile.build b/Dockerfile.build
new file mode 100644
index 0000000000000000000000000000000000000000..f835b2f9eceeb9882b1a3f23704dce0804b94077
--- /dev/null
+++ b/Dockerfile.build
@@ -0,0 +1,7 @@
+FROM openjdk:8
+
+RUN apt update && apt install maven -y
+
+COPY . /opt
+WORKDIR /opt
+RUN mvn clean install -DskipTests=true
diff --git a/Jenkinsfile b/Jenkinsfile
new file mode 100644
index 0000000000000000000000000000000000000000..7eb3c0c77f51124c2a6c9a4dbb9113db0e878d6f
--- /dev/null
+++ b/Jenkinsfile
@@ -0,0 +1,52 @@
+node() {
+    try {
+        String ANSI_GREEN = "\u001B[32m"
+        String ANSI_NORMAL = "\u001B[0m"
+        String ANSI_BOLD = "\u001B[1m"
+        String ANSI_RED = "\u001B[31m"
+        String ANSI_YELLOW = "\u001B[33m"
+
+        ansiColor('xterm') {
+            stage('Checkout') {
+                cleanWs()
+                checkout scm
+                commit_hash = sh(script: 'git rev-parse --short HEAD', returnStdout: true).trim()
+                env.commit_id = sh(script: "echo " + "user" + "_" + commit_hash + "_" + env.BUILD_NUMBER, returnStdout: true).trim()
+                echo "${env.commit_id}"
+                }
+        }
+           stage('docker-pre-build') {
+             sh '''
+
+              docker build --no-cache -f ./Dockerfile.build -t $docker_pre_build .
+              docker run --name $docker_pre_build $docker_pre_build:latest && docker cp $docker_pre_build:/opt/target/analytics-0.0.1-SNAPSHOT.jar .
+              docker rm -f $docker_pre_build
+              docker rmi -f $docker_pre_build
+                '''
+        }
+
+           stage('docker-build') {
+                sh '''
+                   docker build --no-cache -f Dockerfile -t $docker_server/$docker_repo:$commit_id .
+                   '''
+        }
+         stage('docker-push') {
+
+               sh '''
+                  docker push $docker_server/$docker_repo:$commit_id
+                  docker rmi -f $docker_server/$docker_repo:$commit_id
+                  '''
+       }
+       stage('ArchiveArtifacts') {
+	       	   sh ("echo ${commit_id} > commit_id.txt")	     
+                archiveArtifacts "commit_id.txt" 
+                currentBuild.description = "${commit_id}"
+        }
+
+
+}
+    catch (err) {
+        currentBuild.result = "FAILURE"
+        throw err
+    }
+}