SlideShare a Scribd company logo
Yum plug-in to handle docker /container images
Project Information:
Project Title: Yum plug-in to handle docker /container images
Project Description: A single yum command that can download and install container images.
Containers are going to be big moving into the future as a way to download and run silo'd
instances of applications and services. In this effort, we would setup a serer side repository of
pre-built and pre-configured images that are consumable directly under lxc/docker; we would
then write the yum code needed to expose that repository to the users and a few simple
commands to download and install the images users want. In this effort, we would setup a server
side repository of pre-built and pre-configured images that are consumable directly under
Docker; we would then write the yum code needed to expose that repository to the users and a
few simple commands to download and install the images users want.
Details: The problem space we are trying to address here is that at the moment, there is no way
to easily mass build and promote container images (a problem easily solved in the RPM world
with yum and the server metadata for RPM/yum repositories). Given that the mechanism to
facilitate this already exists in yum, it makes most sense to just consume that interface along with
the backend support, and run it for container images. We need to be able to implement 'yum list
container', 'yum install container', and 'yum erase container'. Due to the nature of how containers
work, we will not need to implement a 'yum upgrade container' command since the instance
would update using its own yum mechanism inside the container.
This extends just delivering dockerfiles in an RPM, it enables existing system management
tooling to work with an evolving container set, by being treated much like an RPM repository
would be.
Benefits: Downloading and installing container images using a single Yum command.
Repositories are created and exposed to the users so that they can download the images using
simple yum commands
Implementation: Using the repositories and packages available and creating a server side
repository with pre-built images and these images are written into the yum then developing the
yum code which would be useful in exposing the repository to the user, implementing yum list
container, yum install container, yum erase container. The simple yum commands are developed
and given to the user so as to make the download and installation of images simple.
Timeline:
Week 1: 19th may to 25th may - A better understanding of package management in linux of
various distributions
Week 2: 26th may to 31st may - creating a server side repository and adding pre built
images to the container.
Week 3: 1st June to 7th June – creating and implementing yum list container.
Week 4: 8th June to 14th June – creating and implementing yum install container.
Week 5: 15th June to 21st June – creating and implementing yum erase container.
Week 6: 22nd June to 28th June – checking the serverMeta data for rpm/yum repositories.
Week 7: 29th June to 5th July – Understanding the nature and working of the container.
Week 8: 6th July to 18th July – Developing the code for yum download and installation.
Week 9: 19th July to 25th july – Testing the code for yum download and installation.
Week 10: 26th July to 2nd Aug – reviewing the code and modifications to be done if any.
Week 11: 3rd Aug to 9th Aug – preparing a manual documentation of the project.
Week 12: 10th Aug to 17th Aug –preparing screen shots of the work done, presentations,
documentations in the guidance of mentors.
II) General Information:
 Name: PARAMKUSHAM SRUTHI
 Email: shrutiparamkusham@gmail.com
 Mobile Number: 8985039134, 7036199284
 Mailing Lists: CentOS,CentOS-gsoc,CentOS-Newsletter
 Why Cent OS: With the support and help of GSOC 2015, I want to stick to Cent OS
projects where I can contribute my skills of linux,python and openstack into the projects
and develop a effective module that benefits to the organization and also benefits in
gaining and sharing knowledge which would be an exciting and interesting journey. It
also carries worth for the third parties and vendors as the services provided to them are
easy to consume.
 Technologies known: Python, Linux (user management and permissions,network
configuration,package management,process management,disk management),Openstack
juno version,Open SSH server/client.
 Software experience: worked on openstack dashboard(Instance management through
Nova project),installation of single node and multi node on debian based distribution,
Worked on Devops tools such as Jenkins,Git,Gerrit through persistent systems.
 Worked on opensource projects based on PHP on WikiMedia,MediaWiki software.
Projects done:
1) Open stack project hands-on on local environment.
2) Developedbanking application using python 2.7
3) Linux hands-on practice on Ubuntu and Cent OS
 Important Links:
 Mailing lists on Cent-OS , CentOS-devel,CentOS-Newsletter
 https://kmitshruthi.wordpress.com/
 References:
 http://docs.openstack.org/user-guide/content/
 http://docs.openstack.org/user-guide/content/ch_dashboard.html
 http://docs.openstack.org/user-
guide/content/dashboard_launch_instances.html
 http://docs.openstack.org/user-guide/content/ch_sdk.html
 http://lists.openstack.org/pipermail/openstack-docs/2015-
February/005935.html
 http://docs.openstack.org/icehouse/training-guides/content/
 http://docs.openstack.org/
 http://docs.openstack.org/juno/install-guide/install/apt/content/
 http://docs.openstack.org/juno/install-guide/install/yum/content/
 http://linux-bible.com/
 http://linux-training.be/files/books/LinuxFun.pdf
 http://linux-training.be/files/books/LinuxTraining.pdf
 https://wiki.jenkins-ci.org/display/JENKINS/Use+Jenkins

More Related Content

What's hot

Docker in real life
Docker in real lifeDocker in real life
Docker in real life
Nguyen Van Vuong
 
Docker intro
Docker introDocker intro
Docker intro
Oleg Z
 
Docker introduction
Docker introductionDocker introduction
Docker introduction
Phuc Nguyen
 
Docker architecture-04-1
Docker architecture-04-1Docker architecture-04-1
Docker architecture-04-1
Mohammadreza Amini
 
Docker
DockerDocker
Intro To Docker
Intro To DockerIntro To Docker
Intro To Docker
Jessica Lucci
 
Dockerizing your applications - Docker workshop @Twitter
Dockerizing your applications - Docker workshop @TwitterDockerizing your applications - Docker workshop @Twitter
Dockerizing your applications - Docker workshop @Twitter
dotCloud
 
Web fundamentals
Web fundamentalsWeb fundamentals
Web fundamentals
Nguyen Van Vuong
 
An Introduction to Vagrant and Docker
An Introduction to Vagrant and DockerAn Introduction to Vagrant and Docker
An Introduction to Vagrant and Docker
Scott Lowe
 
Docker workshop
Docker workshopDocker workshop
Docker workshopEvans Ye
 
Learning Dockers - Step by Step
Learning Dockers - Step by StepLearning Dockers - Step by Step
Learning Dockers - Step by Step
Adnan Siddiqi
 
Introduction to docker
Introduction to dockerIntroduction to docker
Introduction to docker
Wei-Ting Kuo
 
Containerization and Docker
Containerization and DockerContainerization and Docker
Containerization and Docker
Megha Bansal
 
Docker Presentation at the OpenStack Austin Meetup | 2013-09-12
Docker Presentation at the OpenStack Austin Meetup | 2013-09-12Docker Presentation at the OpenStack Austin Meetup | 2013-09-12
Docker Presentation at the OpenStack Austin Meetup | 2013-09-12
dotCloud
 
Jenkins, Bhyve, and Webdriver: Continuous Integration testing on FreeNAS by C...
Jenkins, Bhyve, and Webdriver: Continuous Integration testing on FreeNAS by C...Jenkins, Bhyve, and Webdriver: Continuous Integration testing on FreeNAS by C...
Jenkins, Bhyve, and Webdriver: Continuous Integration testing on FreeNAS by C...
iXsystems
 
Docker Introduction
Docker IntroductionDocker Introduction
Docker Introduction
Sparkbit
 
Developer workflow with docker
Developer workflow with dockerDeveloper workflow with docker
Developer workflow with docker
Lalatendu Mohanty
 
Docker Basics
Docker BasicsDocker Basics
Docker Basics
DuckDuckGo
 
Docker + Jelastic - planeetta.fi
Docker + Jelastic - planeetta.fiDocker + Jelastic - planeetta.fi
Docker + Jelastic - planeetta.fi
Jussi Lindfors
 
Docker 101: An Introduction
Docker 101: An IntroductionDocker 101: An Introduction
Docker 101: An Introduction
POSSCON
 

What's hot (20)

Docker in real life
Docker in real lifeDocker in real life
Docker in real life
 
Docker intro
Docker introDocker intro
Docker intro
 
Docker introduction
Docker introductionDocker introduction
Docker introduction
 
Docker architecture-04-1
Docker architecture-04-1Docker architecture-04-1
Docker architecture-04-1
 
Docker
DockerDocker
Docker
 
Intro To Docker
Intro To DockerIntro To Docker
Intro To Docker
 
Dockerizing your applications - Docker workshop @Twitter
Dockerizing your applications - Docker workshop @TwitterDockerizing your applications - Docker workshop @Twitter
Dockerizing your applications - Docker workshop @Twitter
 
Web fundamentals
Web fundamentalsWeb fundamentals
Web fundamentals
 
An Introduction to Vagrant and Docker
An Introduction to Vagrant and DockerAn Introduction to Vagrant and Docker
An Introduction to Vagrant and Docker
 
Docker workshop
Docker workshopDocker workshop
Docker workshop
 
Learning Dockers - Step by Step
Learning Dockers - Step by StepLearning Dockers - Step by Step
Learning Dockers - Step by Step
 
Introduction to docker
Introduction to dockerIntroduction to docker
Introduction to docker
 
Containerization and Docker
Containerization and DockerContainerization and Docker
Containerization and Docker
 
Docker Presentation at the OpenStack Austin Meetup | 2013-09-12
Docker Presentation at the OpenStack Austin Meetup | 2013-09-12Docker Presentation at the OpenStack Austin Meetup | 2013-09-12
Docker Presentation at the OpenStack Austin Meetup | 2013-09-12
 
Jenkins, Bhyve, and Webdriver: Continuous Integration testing on FreeNAS by C...
Jenkins, Bhyve, and Webdriver: Continuous Integration testing on FreeNAS by C...Jenkins, Bhyve, and Webdriver: Continuous Integration testing on FreeNAS by C...
Jenkins, Bhyve, and Webdriver: Continuous Integration testing on FreeNAS by C...
 
Docker Introduction
Docker IntroductionDocker Introduction
Docker Introduction
 
Developer workflow with docker
Developer workflow with dockerDeveloper workflow with docker
Developer workflow with docker
 
Docker Basics
Docker BasicsDocker Basics
Docker Basics
 
Docker + Jelastic - planeetta.fi
Docker + Jelastic - planeetta.fiDocker + Jelastic - planeetta.fi
Docker + Jelastic - planeetta.fi
 
Docker 101: An Introduction
Docker 101: An IntroductionDocker 101: An Introduction
Docker 101: An Introduction
 

Similar to final proposal-yum

final proposal-Lightweight Cloud instance contextualisation tool
final proposal-Lightweight Cloud instance contextualisation toolfinal proposal-Lightweight Cloud instance contextualisation tool
final proposal-Lightweight Cloud instance contextualisation toolParamkusham Shruthi
 
Ansible Workshop for Pythonistas
Ansible Workshop for PythonistasAnsible Workshop for Pythonistas
Ansible Workshop for Pythonistas
Mihai Criveti
 
Microservices in Java
Microservices in JavaMicroservices in Java
Microservices in Java
Anatole Tresch
 
Overview of Docker
Overview of DockerOverview of Docker
Overview of Docker
GauranG Bajpai
 
"Docker best practice", Станислав Коленкин (senior devops, DataArt)
"Docker best practice", Станислав Коленкин (senior devops, DataArt)"Docker best practice", Станислав Коленкин (senior devops, DataArt)
"Docker best practice", Станислав Коленкин (senior devops, DataArt)
DataArt
 
Containerization (docker)
Containerization (docker)Containerization (docker)
Containerization (docker)
RadhikaKachhawa
 
Ubuntu Cloud at Florida Linux Show
Ubuntu Cloud at Florida Linux ShowUbuntu Cloud at Florida Linux Show
Ubuntu Cloud at Florida Linux Show
zoopster
 
Microservices in academic environment
Microservices in academic environmentMicroservices in academic environment
Microservices in academic environment
Milind Bhagwati
 
project_proposal_osrf
project_proposal_osrfproject_proposal_osrf
project_proposal_osrfom1234567890
 
Introduction to Docker Containers - Docker Captain
Introduction to Docker Containers - Docker CaptainIntroduction to Docker Containers - Docker Captain
Introduction to Docker Containers - Docker Captain
Ajeet Singh Raina
 
Commit to excellence - Java in containers
Commit to excellence - Java in containersCommit to excellence - Java in containers
Commit to excellence - Java in containers
Red Hat Developers
 
A Shift from Monolith to Microservice using Docker
A Shift from Monolith to Microservice using DockerA Shift from Monolith to Microservice using Docker
A Shift from Monolith to Microservice using Docker
Ajeet Singh Raina
 
final proposal-Xen based Hypervisor in a Box
final proposal-Xen based Hypervisor in a Boxfinal proposal-Xen based Hypervisor in a Box
final proposal-Xen based Hypervisor in a BoxParamkusham Shruthi
 
Introduction to Docker
Introduction to DockerIntroduction to Docker
Introduction to Docker
Tharaka Devinda
 
Container Security: How We Got Here and Where We're Going
Container Security: How We Got Here and Where We're GoingContainer Security: How We Got Here and Where We're Going
Container Security: How We Got Here and Where We're Going
Phil Estes
 
IBM MQ in containers MQTC 2017
IBM MQ in containers MQTC 2017IBM MQ in containers MQTC 2017
IBM MQ in containers MQTC 2017
Robert Parker
 
Moby Open Source Summit North America 2017
Moby Open Source Summit North America 2017Moby Open Source Summit North America 2017
Moby Open Source Summit North America 2017
Patrick Chanezon
 
Mihai Criveti - PyCon Ireland - Automate Everything
Mihai Criveti - PyCon Ireland - Automate EverythingMihai Criveti - PyCon Ireland - Automate Everything
Mihai Criveti - PyCon Ireland - Automate Everything
Mihai Criveti
 
Open source security tools for Kubernetes.
Open source security tools for Kubernetes.Open source security tools for Kubernetes.
Open source security tools for Kubernetes.
Michael Ducy
 
ASP.NET Core and Docker
ASP.NET Core and DockerASP.NET Core and Docker
ASP.NET Core and Docker
Chuck Megivern
 

Similar to final proposal-yum (20)

final proposal-Lightweight Cloud instance contextualisation tool
final proposal-Lightweight Cloud instance contextualisation toolfinal proposal-Lightweight Cloud instance contextualisation tool
final proposal-Lightweight Cloud instance contextualisation tool
 
Ansible Workshop for Pythonistas
Ansible Workshop for PythonistasAnsible Workshop for Pythonistas
Ansible Workshop for Pythonistas
 
Microservices in Java
Microservices in JavaMicroservices in Java
Microservices in Java
 
Overview of Docker
Overview of DockerOverview of Docker
Overview of Docker
 
"Docker best practice", Станислав Коленкин (senior devops, DataArt)
"Docker best practice", Станислав Коленкин (senior devops, DataArt)"Docker best practice", Станислав Коленкин (senior devops, DataArt)
"Docker best practice", Станислав Коленкин (senior devops, DataArt)
 
Containerization (docker)
Containerization (docker)Containerization (docker)
Containerization (docker)
 
Ubuntu Cloud at Florida Linux Show
Ubuntu Cloud at Florida Linux ShowUbuntu Cloud at Florida Linux Show
Ubuntu Cloud at Florida Linux Show
 
Microservices in academic environment
Microservices in academic environmentMicroservices in academic environment
Microservices in academic environment
 
project_proposal_osrf
project_proposal_osrfproject_proposal_osrf
project_proposal_osrf
 
Introduction to Docker Containers - Docker Captain
Introduction to Docker Containers - Docker CaptainIntroduction to Docker Containers - Docker Captain
Introduction to Docker Containers - Docker Captain
 
Commit to excellence - Java in containers
Commit to excellence - Java in containersCommit to excellence - Java in containers
Commit to excellence - Java in containers
 
A Shift from Monolith to Microservice using Docker
A Shift from Monolith to Microservice using DockerA Shift from Monolith to Microservice using Docker
A Shift from Monolith to Microservice using Docker
 
final proposal-Xen based Hypervisor in a Box
final proposal-Xen based Hypervisor in a Boxfinal proposal-Xen based Hypervisor in a Box
final proposal-Xen based Hypervisor in a Box
 
Introduction to Docker
Introduction to DockerIntroduction to Docker
Introduction to Docker
 
Container Security: How We Got Here and Where We're Going
Container Security: How We Got Here and Where We're GoingContainer Security: How We Got Here and Where We're Going
Container Security: How We Got Here and Where We're Going
 
IBM MQ in containers MQTC 2017
IBM MQ in containers MQTC 2017IBM MQ in containers MQTC 2017
IBM MQ in containers MQTC 2017
 
Moby Open Source Summit North America 2017
Moby Open Source Summit North America 2017Moby Open Source Summit North America 2017
Moby Open Source Summit North America 2017
 
Mihai Criveti - PyCon Ireland - Automate Everything
Mihai Criveti - PyCon Ireland - Automate EverythingMihai Criveti - PyCon Ireland - Automate Everything
Mihai Criveti - PyCon Ireland - Automate Everything
 
Open source security tools for Kubernetes.
Open source security tools for Kubernetes.Open source security tools for Kubernetes.
Open source security tools for Kubernetes.
 
ASP.NET Core and Docker
ASP.NET Core and DockerASP.NET Core and Docker
ASP.NET Core and Docker
 

final proposal-yum

  • 1. Yum plug-in to handle docker /container images Project Information: Project Title: Yum plug-in to handle docker /container images Project Description: A single yum command that can download and install container images. Containers are going to be big moving into the future as a way to download and run silo'd instances of applications and services. In this effort, we would setup a serer side repository of pre-built and pre-configured images that are consumable directly under lxc/docker; we would then write the yum code needed to expose that repository to the users and a few simple commands to download and install the images users want. In this effort, we would setup a server side repository of pre-built and pre-configured images that are consumable directly under Docker; we would then write the yum code needed to expose that repository to the users and a few simple commands to download and install the images users want. Details: The problem space we are trying to address here is that at the moment, there is no way to easily mass build and promote container images (a problem easily solved in the RPM world with yum and the server metadata for RPM/yum repositories). Given that the mechanism to facilitate this already exists in yum, it makes most sense to just consume that interface along with the backend support, and run it for container images. We need to be able to implement 'yum list container', 'yum install container', and 'yum erase container'. Due to the nature of how containers work, we will not need to implement a 'yum upgrade container' command since the instance would update using its own yum mechanism inside the container. This extends just delivering dockerfiles in an RPM, it enables existing system management tooling to work with an evolving container set, by being treated much like an RPM repository would be. Benefits: Downloading and installing container images using a single Yum command. Repositories are created and exposed to the users so that they can download the images using simple yum commands
  • 2. Implementation: Using the repositories and packages available and creating a server side repository with pre-built images and these images are written into the yum then developing the yum code which would be useful in exposing the repository to the user, implementing yum list container, yum install container, yum erase container. The simple yum commands are developed and given to the user so as to make the download and installation of images simple. Timeline: Week 1: 19th may to 25th may - A better understanding of package management in linux of various distributions Week 2: 26th may to 31st may - creating a server side repository and adding pre built images to the container. Week 3: 1st June to 7th June – creating and implementing yum list container. Week 4: 8th June to 14th June – creating and implementing yum install container. Week 5: 15th June to 21st June – creating and implementing yum erase container. Week 6: 22nd June to 28th June – checking the serverMeta data for rpm/yum repositories. Week 7: 29th June to 5th July – Understanding the nature and working of the container. Week 8: 6th July to 18th July – Developing the code for yum download and installation. Week 9: 19th July to 25th july – Testing the code for yum download and installation. Week 10: 26th July to 2nd Aug – reviewing the code and modifications to be done if any. Week 11: 3rd Aug to 9th Aug – preparing a manual documentation of the project. Week 12: 10th Aug to 17th Aug –preparing screen shots of the work done, presentations, documentations in the guidance of mentors. II) General Information:  Name: PARAMKUSHAM SRUTHI  Email: shrutiparamkusham@gmail.com  Mobile Number: 8985039134, 7036199284  Mailing Lists: CentOS,CentOS-gsoc,CentOS-Newsletter  Why Cent OS: With the support and help of GSOC 2015, I want to stick to Cent OS projects where I can contribute my skills of linux,python and openstack into the projects and develop a effective module that benefits to the organization and also benefits in gaining and sharing knowledge which would be an exciting and interesting journey. It
  • 3. also carries worth for the third parties and vendors as the services provided to them are easy to consume.  Technologies known: Python, Linux (user management and permissions,network configuration,package management,process management,disk management),Openstack juno version,Open SSH server/client.  Software experience: worked on openstack dashboard(Instance management through Nova project),installation of single node and multi node on debian based distribution, Worked on Devops tools such as Jenkins,Git,Gerrit through persistent systems.  Worked on opensource projects based on PHP on WikiMedia,MediaWiki software. Projects done: 1) Open stack project hands-on on local environment. 2) Developedbanking application using python 2.7 3) Linux hands-on practice on Ubuntu and Cent OS  Important Links:  Mailing lists on Cent-OS , CentOS-devel,CentOS-Newsletter  https://kmitshruthi.wordpress.com/  References:  http://docs.openstack.org/user-guide/content/  http://docs.openstack.org/user-guide/content/ch_dashboard.html  http://docs.openstack.org/user- guide/content/dashboard_launch_instances.html  http://docs.openstack.org/user-guide/content/ch_sdk.html  http://lists.openstack.org/pipermail/openstack-docs/2015- February/005935.html  http://docs.openstack.org/icehouse/training-guides/content/  http://docs.openstack.org/  http://docs.openstack.org/juno/install-guide/install/apt/content/  http://docs.openstack.org/juno/install-guide/install/yum/content/  http://linux-bible.com/  http://linux-training.be/files/books/LinuxFun.pdf  http://linux-training.be/files/books/LinuxTraining.pdf  https://wiki.jenkins-ci.org/display/JENKINS/Use+Jenkins