Image for post
Image for post
Photo by Marvin Meyer on Unsplash

In this post I show how to deploy a Spring boot application running in a container which can be used on any AWS Account with a few manual steps.

The application is written in such a way that the developers can only focus on writing the Java code and upon a commit to a specific branch (in this case, master) the new version of the docker image produced by the code is run.

The code can be found at my GitHub Account.

Why Fargate and not ECS or EC2?

Before we start going into the actual implementation steps, why am I using Fargate for my deployment?

There are other services from AWS which can also be used for deploying docker containers. EC2 and normal ECS among others. …


Image for post
Image for post
Photo by Gabriele Stravinskaite on Unsplash

This is a part of the series to demonstrate deployment of a (Production Ready) Springboot Application with PostgreSQL Database on AWS Fargate using CI/CD tools of AWS.

This is the third in the series. Please read part1 and part2 if you would like to follow the overall application.

So far till Part2, I have developed a basic Springboot Application and deployed it in a CI/CD way. This Application reads and writes to a RDS instance. With this implementation, the API is accessed using the Public DNS name of the ELB which routes the traffic to ECS instances. …


Image for post
Image for post
Photo by Campaign Creators on Unsplash

This is part 2 of a series, please go through Part 1 here for better understanding if you have not done already.

In the first part, I developed a basic Springboot API and deployed it on AWS Fargate through CodePipeline (AWS CI/CD way). While that was good enough for the application demo, the data is not really persistent and only limited to the run time. This step takes the application a bit closer to being production-ready by using a persistent RDS Database instance.

Why RDS?

RDS is a managed DB solution from AWS where the user only needs to specify the type of instance (MySQL, Aurora, Postgres etc), the memory, and the credentials to connect to the DB instance. …


Image for post
Image for post
Photo by Markus Spiske on Unsplash

The end goal of this series is to deploy a basic Springboot application on AWS ECS Fargate in a CI/CD way which is (almost) production ready, from the infrastructure and deployment side. The ideal application flow starts from GitHub where developers commit their code, which passes through certain stages in the pipeline and finally gets deployed into production with a little or no manual intervention.

This Part1 is very similar to my other post which demonstrates the same use case and I urge you to go through it first. …


Image for post
Image for post
Source: https://www.dsm.net/it-solutions-blog/public-cloud-repatriation-offers-cost-savings-control-and-compliance

Repatriation in Cloud context is bringing applications running on cloud to the good old on-premise server. While the software development industry is gradually moving their applications to cloud, whether or not to consider Repatriation as an anti-pattern is still up for debate.

This is happening in a lot of industries where physical control of data center in aspects of data security is desired. There are also cases where public cloud can be more expensive than on-premise solutions. This post covers my experiences of migrating cloud applications to on-premise which was a result of a management decision about Data Security Compliance.

Architecture of existing Cloud Applications

The application architecture was based on AWS Lambda execution which was triggered by API gateway. Each Lambda function had a dedicated endpoint to it and the Lambda functions were made as small as possible in terms of their dependencies to reduce latency. Ideally about 2–3 Lambda functions with related functionality were packed into a microservice which was deployed using AWS CodePipeline. Each microservice had a dedicated CodePipeline. An example of this can be found on my Lambda-API. Here I had Lambda functions for the microservice deployed within a single environment. …

About

Sriharsha Polimetla

Cloud Developer, Passionate Traveler https://www.linkedin.com/in/spolimetla/

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store