Lets get into Devops World from Scratch with real time Hands On Projects to build Solutions for CI/CD through Jenkins with deploying Docker Containerized apps into AWSLinux Servers from Git hub.
We will also learn Automation tool called Ansible which will generate Scripts to automate the process of Deployment using Docker Containers in various machines.
This Course assumes that students do not have any prior knowledge on Devops tools and will start everything from Scratch including Linux Basic Commands.
By end of this course, You will get Practical Project experience in understanding how all the Devops tools connected together to build robust Automation Infrastructure.
Below are the topics on high level we will go over in this course :
What are Hosting Servers and Application Servers?
Demo to understand what Deployment is?
How code developed is hosted on the servers and accessed through browser?
Demo on Jenkins Job creation for deployment of app in Server.
Drawbacks with current design and why to choose Linux OS
Create and Launch AWS Linux Instance to manage Jenkins
Connect to Linux Server through SSH
Install JAVA on Linux Server
Install Jenkins, Maven and GIT to have job for Deployment
Create new Linux server (App Server) in AWS for Deploying App
Create User in Server which can manage deploy
Connect Jenkins server to App Server through SSH Plugin
Create a Jenkin Job which deploys app into App Server
Install Docker in App Server
Create a Docker file which Install TomCat Server and Deploy App
Create Image from the file and deploy into Container
Access the App through public Ip:port which is running on Container
Install Ansible and its need for Deployment
Create Ansible Playbook to automate all docker related commands
Fix the problems of stopping and starting containers through Ansible yml file
Create SSH Key and hosts file for establishing connection through Ansible
Pass the Ansible Playbook commands into Jenkins Job for automatic Deployment in App server
Create another Linux App Server B through AWS
Create User in Server which can manage deploy
Establish connection to App Server B from App server A through Ssh keys
Ping the App Server B from Server A through Ansible command for connection check
Develop a yml playbook file which pushes the docker image to Docker Hub in Server A
Modify the Jenkins job to deploy the App into Server B through Ansible Commands
Adding Post build action run automated tests after new Code successfully Deployed
What is Pipeline and understand the basics of Jenkin Pipeline
Creating the JenkinsFile with the complete job configuration design to run end to end deployment process
Checkin the JenkiFile into Code repo and automate the complete CI/CD process through Jenkins!!
Wish you all the Best and See you in the Course :)