Hands-on DevOps with Linux brings you advanced learnings on how to make the best use of Linux commands in managing the DevOps infrastructure to keep enterprise applications up-to-date.
The book begins by introducing you to the Linux world with the most used commands by DevOps experts and teaches how to set up your own infrastructure in your environment. The book covers exclusive coverage on production scenarios using Kubernetes and how the entire container orchestration is managed.
Throughout the book, you will get accustomed to the most widely used techniques among DevOps Engineers in their routine. You will explore how infrastructure as code works, working with Vagrant, Docker and Terraform through which you can manage the entire cloud deployment of applications along with how to scale them on your own.
Cover Page
Title Page
Copyright Page
Dedication Page
About the Author
About the Reviewer
Acknowledgement
Preface
Errata
Table of Contents
1. Getting Started With Linux
Structure
Objectives
What is Linux?
Distributions
Servers
Conclusion
Setting up your environment
Installing the VirtualBox
Installing the Linux System
Installing Your Linux System
Accessing via SSH
Conclusion
2. Working with Bash
Structure
Objectives
What is Bash?
Introduction
Managing files and directories
Structure of directories
Important Files
Managing users and groups
Managing users
Managing groups
Working with Permissions
Changing read and write permissions
Change the owner of files and executing scripts
3. Setting Up a Service
Structure
Objectives
Learning how to install a package
APT
Installing Apache
Installing PHP
Installing MariaDB
Installing WordPress
Conclusion
4. Configuring a Reverse Proxy with Nginx
Structure
Objectives
Installing the Nginx
Installing Python
Creating a simple page using Flask
Configuring the Reverse Proxy
5. Deploying Your Application Using Docker
Structure
Objectives
Introduction to Docker
Installation
Creating Containers
Creating Images with Dockerfile
Conclusion
6. Automating Your Infrastructure as Code
Structure
Objectives
Introduction to Infrastructure as Code
What is Vagrant and How It Works?
Vagrant installing
Usage
Up and running
Setting up a LAMP Server
Setting up the Docker Server
Conclusion
7. Creating Your Infrastructure Using Cloud Services
Structure
Objectives
Cloud and Main Players
AWS
GCP
Azure
Provisioning using AWS
Provisioning using GCP
Provisioning using Azure
Conclusion
8. Working with Terraform
Structure
Objectives
Multicloud
HashiCorp
Introduction to Terraform
Conclusion
9. Working with Git
Structure
Objectives
Git
GitFlow
GitHub
Conclusion
10. Continuous Integration and Continuous Delivery Using Jenkins
Structure
Objectives
Pipelines
Continuous Integration
Continuous Delivery
Pipeline as Code and Jenkins
Conclusion
Questions
11. Deploying and Scaling Your Application Using Kubernetes
Hands-on DevOps with Linux brings you advanced learnings on how to make the best use of Linux commands in managing the DevOps infrastructure to keep enterprise applications up-to-date.
The book begins by introducing you to the Linux world with the most used commands by DevOps experts and teaches how to set up your own infrastructure in your environment. The book covers exclusive coverage on production scenarios using Kubernetes and how the entire container orchestration is managed.
Throughout the book, you will get accustomed to the most widely used techniques among DevOps Engineers in their routine. You will explore how infrastructure as code works, working with Vagrant, Docker and Terraform through which you can manage the entire cloud deployment of applications along with how to scale them on your own.
Table of contents
Cover Page
Title Page
Copyright Page
Dedication Page
About the Author
About the Reviewer
Acknowledgement
Preface
Errata
Table of Contents
1. Getting Started With Linux
Structure
Objectives
What is Linux?
Distributions
Servers
Conclusion
Setting up your environment
Installing the VirtualBox
Installing the Linux System
Installing Your Linux System
Accessing via SSH
Conclusion
2. Working with Bash
Structure
Objectives
What is Bash?
Introduction
Managing files and directories
Structure of directories
Important Files
Managing users and groups
Managing users
Managing groups
Working with Permissions
Changing read and write permissions
Change the owner of files and executing scripts
3. Setting Up a Service
Structure
Objectives
Learning how to install a package
APT
Installing Apache
Installing PHP
Installing MariaDB
Installing WordPress
Conclusion
4. Configuring a Reverse Proxy with Nginx
Structure
Objectives
Installing the Nginx
Installing Python
Creating a simple page using Flask
Configuring the Reverse Proxy
5. Deploying Your Application Using Docker
Structure
Objectives
Introduction to Docker
Installation
Creating Containers
Creating Images with Dockerfile
Conclusion
6. Automating Your Infrastructure as Code
Structure
Objectives
Introduction to Infrastructure as Code
What is Vagrant and How It Works?
Vagrant installing
Usage
Up and running
Setting up a LAMP Server
Setting up the Docker Server
Conclusion
7. Creating Your Infrastructure Using Cloud Services
Structure
Objectives
Cloud and Main Players
AWS
GCP
Azure
Provisioning using AWS
Provisioning using GCP
Provisioning using Azure
Conclusion
8. Working with Terraform
Structure
Objectives
Multicloud
HashiCorp
Introduction to Terraform
Conclusion
9. Working with Git
Structure
Objectives
Git
GitFlow
GitHub
Conclusion
10. Continuous Integration and Continuous Delivery Using Jenkins
Structure
Objectives
Pipelines
Continuous Integration
Continuous Delivery
Pipeline as Code and Jenkins
Conclusion
Questions
11. Deploying and Scaling Your Application Using Kubernetes