KEMBAR78
Containerization and version control system | PPTX
CONTAINERIZATION AND
VERSION CONTROL SYSTEM
SUBMITTED BY : ROHIT KUMAR VERMA
Content :
1. Introduction
I. Containerization ……………………………………………………………………………………………………………………………………………………………… 3-4
II. Version Control System ……………………………………………………………………………………………………………………………………………………... 5
2. Docker
I. Introduction ………………………………………………………………………………………………………………………………………… 6
II. Difference between Docker Architecture and Virtualization Architecture …………………………………………… 7
3. Docker Container Lifecycle ………………………………………………………………………………………………………….. 8
4. Docker Hub …………………………………………………………………………………………………………………………… 9
5. Docker File …………………………………………………………………………………………………………………………………. 10
6. Docker command ……………………………………………………………………………………….. 11
4. Gitlab ………………………………………………………………………………………………………………………………………………………………………………………………. 12
5. Repositary, Branch and Commits ……………………………………………………………………………………………………………….. 13-15
6. Git common commands …………………………………………………………………………………………………………………………..16
7. Gitlab CI/CD …………………………………………………………………………………………………………………………………………………………. 17-18
8. Project Setup ………………………………………………………………………………………………………………………………………………………………………. 19
INTRODUCTION
• Containerization is an emerging technology that promises to solve the problem of software discrepancies when moved from
one computing environment to another.
• When a software is migrated from a test environment to a staging environment, into
production, or even into the cloud, it may not operate as planned.
Problem Solve with Image
Version Control System
1. Version control is a system that records changes to a file or set of files over time so that you can
recall specific versions later.
2. it keep the track of files modifications done to the code.
3. A repository: It can be thought as a database of changes. It contains all the edits and historical
versions (snapshots) of the project.
4. Copy of Work (sometimes called as checkout): It is the personal copy of all the files in a project.
You can edit to this copy, without affecting the work of others and you can finally commit your
changes to a repository when you are done making your changes.
5. Example: gitlab
6. Types of Version Control Systems:
◦ Local Version Control Systems
◦ Centralized Version Control Systems
◦ Distributed Version Control Systems
Docker
( Introduction )
Docker Architecture and Virtual Machine Architecture
Docker Container Lifecycle
Docker Hub
Docker Hub is a service provided by Docker for finding and sharing container images with your
team. It provides the following major features:
◦ Repositories: Push and pull container images.
◦ Teams & Organizations: Manage access to private repositories of container images.
◦ Official Images: Pull and use high-quality container images provided by Docker.
◦ Publisher Images: Pull and use high- quality container images provided by external vendors. Certified
images also include support and guarantee compatibility with Docker Enterprise.
◦ Builds: Automatically build container images from GitHub and Bitbucket and push them to Docker Hub.
Docker File
A Dockerfile is a text document that contains commands that are used to assemble an image.
Docker builds images automatically by reading the instructions from the Dockerfile.
docker build -f /path/to/a/Dockerfile
-f is used to find docker file from anywhere
Docker Commands
Docker –version
To know docker version present In the machine
docker create [IMAGE]
To create Docker image3
Docker run [image] [command]
To Run Image and create container
Docker rm [container]
To remove container which is in running state
Docker update
To update container
Gitlab
(git)
Repository , Branches and Commits
Git repository is just a file location where you are storing all the files related to your project.
Git branch is like a parallel world where you can create commit without introducing bugs into
production code due to which git become distributed version control
git branch navbar
Git Commits is a commands which is used to store current changes along with commit message
Git commit –m “this is my changes to the code”
Example
Repository Branches
Commits
Commits Graph with branch Commits changes
Gitlab common commands
Git init to initialize git in local machine
Git commit –m “ commite message” to commit chages in local branch
Git branch < branch_name > to create branch
Git checkout < branch_name > to move to another branch
Git cherry-pick < commit_id > to take changes of a commit to current branch
Git rebase < branch_name > to bring all commits of a branch to current branch
Git status to see changes in files in current branch
Git add < changed > to add changes to staging memory
Git merge < branch_name > to merge the changes of a branch to current branch
Gitlab CI/Cd
Contineous Integration Continuous Deployment
Continuous Integration works by pushing small code chunks to your application’s code base
hosted in a Git repository, and, to every push, run a pipeline of scripts to build, test, and validate
the code changes before merging them into the main branch.
These methodologies allow you to catch bugs and errors early in the development cycle,
ensuring that all the code deployed to production complies with the code standards you
established for your app.
For this we use git pipelines which is used for this purpose and in gitlab this pipeline is written in
.gitlab-ci.yml file
When we push the code to branch then pipeline will run which will do written by us line building
the code, checking lint error and then deploying the project all these work done by pipeline
Example
Project Setup
Thank you

Containerization and version control system

  • 1.
    CONTAINERIZATION AND VERSION CONTROLSYSTEM SUBMITTED BY : ROHIT KUMAR VERMA
  • 2.
    Content : 1. Introduction I.Containerization ……………………………………………………………………………………………………………………………………………………………… 3-4 II. Version Control System ……………………………………………………………………………………………………………………………………………………... 5 2. Docker I. Introduction ………………………………………………………………………………………………………………………………………… 6 II. Difference between Docker Architecture and Virtualization Architecture …………………………………………… 7 3. Docker Container Lifecycle ………………………………………………………………………………………………………….. 8 4. Docker Hub …………………………………………………………………………………………………………………………… 9 5. Docker File …………………………………………………………………………………………………………………………………. 10 6. Docker command ……………………………………………………………………………………….. 11 4. Gitlab ………………………………………………………………………………………………………………………………………………………………………………………………. 12 5. Repositary, Branch and Commits ……………………………………………………………………………………………………………….. 13-15 6. Git common commands …………………………………………………………………………………………………………………………..16 7. Gitlab CI/CD …………………………………………………………………………………………………………………………………………………………. 17-18 8. Project Setup ………………………………………………………………………………………………………………………………………………………………………. 19
  • 3.
    INTRODUCTION • Containerization isan emerging technology that promises to solve the problem of software discrepancies when moved from one computing environment to another. • When a software is migrated from a test environment to a staging environment, into production, or even into the cloud, it may not operate as planned.
  • 4.
  • 5.
    Version Control System 1.Version control is a system that records changes to a file or set of files over time so that you can recall specific versions later. 2. it keep the track of files modifications done to the code. 3. A repository: It can be thought as a database of changes. It contains all the edits and historical versions (snapshots) of the project. 4. Copy of Work (sometimes called as checkout): It is the personal copy of all the files in a project. You can edit to this copy, without affecting the work of others and you can finally commit your changes to a repository when you are done making your changes. 5. Example: gitlab 6. Types of Version Control Systems: ◦ Local Version Control Systems ◦ Centralized Version Control Systems ◦ Distributed Version Control Systems
  • 6.
  • 7.
    Docker Architecture andVirtual Machine Architecture
  • 8.
  • 9.
    Docker Hub Docker Hubis a service provided by Docker for finding and sharing container images with your team. It provides the following major features: ◦ Repositories: Push and pull container images. ◦ Teams & Organizations: Manage access to private repositories of container images. ◦ Official Images: Pull and use high-quality container images provided by Docker. ◦ Publisher Images: Pull and use high- quality container images provided by external vendors. Certified images also include support and guarantee compatibility with Docker Enterprise. ◦ Builds: Automatically build container images from GitHub and Bitbucket and push them to Docker Hub.
  • 10.
    Docker File A Dockerfileis a text document that contains commands that are used to assemble an image. Docker builds images automatically by reading the instructions from the Dockerfile. docker build -f /path/to/a/Dockerfile -f is used to find docker file from anywhere
  • 11.
    Docker Commands Docker –version Toknow docker version present In the machine docker create [IMAGE] To create Docker image3 Docker run [image] [command] To Run Image and create container Docker rm [container] To remove container which is in running state Docker update To update container
  • 12.
  • 13.
    Repository , Branchesand Commits Git repository is just a file location where you are storing all the files related to your project. Git branch is like a parallel world where you can create commit without introducing bugs into production code due to which git become distributed version control git branch navbar Git Commits is a commands which is used to store current changes along with commit message Git commit –m “this is my changes to the code”
  • 14.
  • 15.
    Commits Commits Graph withbranch Commits changes
  • 16.
    Gitlab common commands Gitinit to initialize git in local machine Git commit –m “ commite message” to commit chages in local branch Git branch < branch_name > to create branch Git checkout < branch_name > to move to another branch Git cherry-pick < commit_id > to take changes of a commit to current branch Git rebase < branch_name > to bring all commits of a branch to current branch Git status to see changes in files in current branch Git add < changed > to add changes to staging memory Git merge < branch_name > to merge the changes of a branch to current branch
  • 17.
    Gitlab CI/Cd Contineous IntegrationContinuous Deployment Continuous Integration works by pushing small code chunks to your application’s code base hosted in a Git repository, and, to every push, run a pipeline of scripts to build, test, and validate the code changes before merging them into the main branch. These methodologies allow you to catch bugs and errors early in the development cycle, ensuring that all the code deployed to production complies with the code standards you established for your app. For this we use git pipelines which is used for this purpose and in gitlab this pipeline is written in .gitlab-ci.yml file When we push the code to branch then pipeline will run which will do written by us line building the code, checking lint error and then deploying the project all these work done by pipeline
  • 18.
  • 19.
  • 20.