This is a guide on how to deploy an application to Amazon Web Services (AWS).
This guide assumes that you already have an account and knows what AWS is used for.
The guide will walk you through the implementation of a continuos integration and continuous deploy using most of the the AWS resources.
If you feel read move the Wiki pages, there we will start the process step by step. Good Luck!
It will be used to run our application.
It will be used to save or docker image. One could opt to use the docker hub.
It will hold our code, just like GitHub, Bitbucker and many others do.
It will build our code. It means that the code build will get our last committed code, run the necessary build steps and save the build artifacts (files to be served) in to S3.
It will get the built code that was saved to S3 and put it inside our EC2 instances to be served by apache or nginx.
It will automate all the process for us. If we don't use it we will have to do the build and deploy commands manually.
It will be used to create users and access keys. The access key will be used to access our instances by ssh.
It will be used to help us to distribute the connections all over our instances.
It will be used to define how we want our instances to be launched when the need comes. The need generally comes from a set of rules that we will define later. The service used to verify if the need arrived is the Auto Scaling Groups.
It will be used to scale our application size horizontally, i.i.e, it will replicate our app across multiple instances if the a given rule is met. It will scaled down too, if a rule that was previously met goes to an unsatisfied state.
It will hold our build artifacts.
It will be used to hold wall the external software needed by our application to run, example: Apache.
It will hold our code, one could use Code Commit.
It will be used to assembly an image that we can use to build our project.