DevOps Lifecycle: Continuous Integration and Development


DevOps is a culture that maintains collaboration between Development and Operation. So it’s a combination of two words “Development” and “Operation”. DevOps aims to increase the organization’s speed to deliver an application from the development phase to production.

The development of an application is not as simple as people think. As everybody knows after development, the application needs to go under some phases like build, test, deploy, operate and monitor. Each phase has its standards.

In this post, we are going to set up a workflow using a few DevOps tools to manage and automate DevOps Lifecycle.

Prerequisites:

  • Github
  • Docker
  • Docker Hub
  • Docker-Compose
  • Amazon AWS Elastic Beanstalk
  • Travis-CI

Workflow:

Step 1: Setup Github

Github is a version control system, that has many features when compared to other alternatives. Feel free to open an account on Github and share your project over it.

Step 2: Setup Travis-CI

Travis CI supports the development process by automatically building and testing code changes, providing user web dashboard to the success of the change.You can sign in with your Github account from the Travis-CI login page. After sign in you should enabling your project to build automatically under settings.

Travis CI: Test and Deploy with Confidence

Step 3: Setup Git

Git is an opensource version control system that provided under GPLv2, LGPLv2.1 license. You should check this link to install Git on your machine. There is clear documentation about how to install Git on the local machine.

Step 4: Setup Docker

Docker is a precompiled software to automate and make it easier to build, test, deploy, operate and monitor by using container technology. To install and configure docker check docker documentation pageDocker-Compose is a tool for defining and running multi-container Docker base application. I strongly advice to read story that has written by Derian Pratama Tungka

https://link.medium.com/otTe51c0WY

Step 5: Amazon AWS Elastic Beanstalk

Elastic Beanstalk is an AWS service that supports the development of web application. Elastic Beanstalk provides platforms for programming languages (Go, Java, Node.js, PHP, Python, Ruby), application servers (Tomcat, Passenger, Puma), and Docker containers. You can deploy your pre-compiled application using the management console, the CLI, or the API. Sommer Shurbaji has written two good stories about how to deploy docker base application to Elastic Beanstalk from Travis-CI and CLI. I added links.

https://link.medium.com/yF74w9X0WY

https://link.medium.com/mtOfHlx1WY


AWS Elastic Beanstalk Supported Platforms
AWS Elastic Beanstalk provides a variety of platforms on which you can build your applications. You design your web…docs.aws.amazon.com

Tagged In:

I'm a IT Infrastructure and Operations Architect with extensive experience and administration skills and works for Turk Telekom. I provide hardware and software support for the IT Infrastructure and Operations tasks.

205 Total Posts
Follow Me

Related Post