This is a 3-in-1 course designed for the students who wish to learn the Basics of Docker , How Mysql Databases work on Docker On-Prem & AWS Cloud.
We shall begin with the Basics : What is Docker , What are Containers as the concept of Docker revolves around Containers. We shall then looks and compare Docker with Virtual Machines. An understanding will be given to the students about the benefits of Docker and some interesting Facts.
Docker Architecture : Deep Dive & Demos
My belief is when learning a new technology it's always good to understand the Architecture and hence we shall do a deep dive into the architecture of Docker, We will understand the basic terminlogies like What is a Docker Image/Container/ Registry/Engine and this will equip us to understand the technology and get a good grasp of the subject.
The demos for installation of Docker on MacOs will be done and we will also perform loads of demos to run and understand the Basic Docker Commands.
Mysql Database on Docker
We shall then move our focus to Mysql Databases on Docker and get an understanding around the official images for Mysql community edition that are available from Docker & Oracle. We will do demos to install these and look at differences.
We shall try and understand the importance of tags and how you can install multiple versions of mysql. I will also show how you can connect mysql database in a container using CLI & Mysql workbench.
We will focus on Industry standards for creating Docker containers using the Docker Compose with Demos. We will also look at practical methods of creating your own custom image / pusing that image to Docker Hub / Pulling the same image and create a new container from the image.
An in-depth understanding will be given on Data Persistence in Docker and how we can create Mysql Database using Docker Volumes. As any discussion on Databases will be incomplete without Backups/Recovery hence we shall take a look at Backup/Recovery of Mysql Databases in Docker.
Mysql Database on Docker in AWS Cloud
We shall use the above understanding and use it in the world of AWS Cloud. For this we will work on our custom Architecture where in we will create our own VPC (Virtual Private Cloud) and this VPC will have 2 Subnets: A Public Subnet for Webserver and a Private Subnet for the Database Server (Mysql).
I will do practical demos and give you good understanding on the Security Groups and how you can create Security Groups for Webserver and DB Sever, please note that as Database Server is in private Subnet no one from outside world can access it directly and only the Webserver will be able to talk to Database Server.
At the same time the Database Server needs to have internet connectivity as we need to install Docker there , how this can be achieved will be mentioned as well.
Some more practical demos will be done showing the students how we can build EC2 Machines in AWS Cloud , one which will be used for Webserver and other for the Database Server. We will also install PHP 7.2 along with Apache Webserver at the Front End , and for the Backend we we will have Mysql Database running inside Docker on AWS Cloud.
At the end we will write a PHP Code and which will make a connection from PHP to Mysql Database on Docker in AWS Cloud and will extract and display the database from Mysql Tables.
DB Alchemist Academy
- Knowledge of Databases (Mysql / Oracle)