SlideShare uma empresa Scribd logo
1 de 36
About me
Fathi Jemli
● Software engineer @ Proxym-IT
● DevOps and Big Data enthusiast
Em@il: jemlifathi2013@gmail.com Twitter: @jemlifathi
2017 Trends
● Microservices
● Cloud Computing
● Server less development
● Environment independent development
● Analytics
● Big Data
● DevOps: CI/CD, Automation, Monitoring, etc.
Yesterday
VS
Now
Nowadays applications needs many technologies
Too many choices. Right?
BUT!
You have to take into consideration
● Technologies requirements
● Compatibility
● Portability: build once, run everywhere
● Keeping your system clean and healthy
● Performance
The Matrix From Hell
OMG! I hate my job!
What We Need
A solution to run each technology on its own environment, without worrying about its
compatibility, test, integration and portability.
Solutions over
time
● Virtual machines
● Free BSD jails
● Solaris zones
● LXC: Linux containers
What Are Containers
● Container is a standard format
● Operating System virtualization
● Isolated user space instances in term of process and file system
● Shares host Linux kernel
● Easily portable across environment
● Packages up software binaries and dependencies
What about
Docker:
Build, Ship
and Run
everywhere
Docker in 2013
A lightweight runtime and robust tooling to build and run
virtual containers on Linux to create the operating environment
for your distributed applications.
Docker in 2017
A Containers as a Service (CaaS) platform which
enables an IT Ops managed and secure application
environment (infrastructure and content) for developer
self service to build and deploy applications.
Docker VS VM
Docker VS VM
Docker System
Docker system
Docker image
● A static definition of a container
● An image is a stack of reusable image layers
● An image have a base image
● Image properties:
○ Name
○ Tag ( by default “latest”)
○ Id
○ Size
Docker image
docker pull: pulling existing image
● docker pull java:8
● docker pull alpine:3.5
● Docker pull redis
Docker image
Dockerfile: definition of an image
FROM node:6.3.1
maintainer jemlifathi
# Create app directory
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app
RUN npm install nodemon -g
RUN npm install pm2 -g
# Install app dependencies
COPY package.json /usr/src/app
CMD npm install
EXPOSE 3000
docker build: building an image
$>docker build -t my-image
relative_path_to_folder_containing_Docker
file
Docker
container
● An instance of an image
● We can create many containers out of one
image
● An image have a base image
● Container properties
○ Id
○ Status
○ Command, etc
● Container/machine interaction:
○ Volumes
○ Ports, etc
Docker container
Example: running a container
● docker run -it --name ubuntu-14 ubuntu:14.04 /bin/bash
● docker run -d --name webserver -v $(PWD)/webapp/:/usr/share/nginx/html -p
80:80 nginx
● docker run --name db -d -v $(PWD)/data/:/var/lib/mysql -p 3307:3306 -e
MYSQL_ROOT_PASSWORD=passwd -e MYSQL_DATABASE=test mysql:5.6
● docker run --name cache -d -p 6380:6379 -v $(PWD)/cache/:/data redis
● docker run --name backend -d -p 3000:3000 -v $(PWD)/backend/:/src/app/ --
link cache:cache --link db:db npm start
----------------------------------------------------------------------------------------------------------------------------------
-
● docker ps (-alq)
Docker Compose
Docker Compose let you define, automate and run
multi-container applications.
Docker Compose
You define your architecture (services, networks, etc) in a “docker-
compose.yml” file and Docker Compose validate your configuration,
starts your multi container app.
docker-compose.yml
Docker Cloud
Docker Data Center brings container management
and deployment to enterprises with a production
ready platform supported by Docker.
Docker Landscape
Statistics About Docker (2016)
● 2B+ Docker Image pulls
● 2000+ contributors
● 47K+ GitHub stars
● 200K+ Dockerized Apps
● 240 Meetups in 70 countries
● 95K+ Meetup Members
Docker Insights (2016)
Docker Insights (2016)
Docker Insights (2016)
Try to keep your
containers like this
Not like this!
Demo
Dockerized ELK

Mais conteúdo relacionado

Mais procurados

Containers in depth – understanding how containers work to better work with c...
Containers in depth – understanding how containers work to better work with c...Containers in depth – understanding how containers work to better work with c...
Containers in depth – understanding how containers work to better work with c...All Things Open
 
Intro to Docker at the 2016 Evans Developer relations conference
Intro to Docker at the 2016 Evans Developer relations conferenceIntro to Docker at the 2016 Evans Developer relations conference
Intro to Docker at the 2016 Evans Developer relations conferenceMano Marks
 
Introduction to containers running dockers using kubernetes - הרצאה לכנס מיק...
Introduction to containers  running dockers using kubernetes - הרצאה לכנס מיק...Introduction to containers  running dockers using kubernetes - הרצאה לכנס מיק...
Introduction to containers running dockers using kubernetes - הרצאה לכנס מיק...Zohar Stolar
 
Introduction to Docker
Introduction to DockerIntroduction to Docker
Introduction to DockerJames Turnbull
 
Docker introduction & benefits
Docker introduction & benefitsDocker introduction & benefits
Docker introduction & benefitsAmit Manwade
 
Docker Containers Deep Dive
Docker Containers Deep DiveDocker Containers Deep Dive
Docker Containers Deep DiveWill Kinard
 
Docker Overview - Rise of the Containers
Docker Overview - Rise of the ContainersDocker Overview - Rise of the Containers
Docker Overview - Rise of the ContainersRyan Hodgin
 
Docker taylor swift and protection v06
Docker taylor swift and protection v06Docker taylor swift and protection v06
Docker taylor swift and protection v06marketingunitrends
 
Building microservices with docker
Building microservices with dockerBuilding microservices with docker
Building microservices with dockerRoman Melnyk
 
Intro to docker - innovation demo 2022
Intro to docker - innovation demo 2022Intro to docker - innovation demo 2022
Intro to docker - innovation demo 2022Hussain Mansoor
 
Introduction to Docker - 2017
Introduction to Docker - 2017Introduction to Docker - 2017
Introduction to Docker - 2017Docker, Inc.
 
Why Docker
Why DockerWhy Docker
Why DockerdotCloud
 
Docker Basic to Advance
Docker Basic to AdvanceDocker Basic to Advance
Docker Basic to AdvanceParas Jain
 
DockerCon EU 2015: What is it we want in containers anyway?
DockerCon EU 2015: What is it we want in containers anyway?DockerCon EU 2015: What is it we want in containers anyway?
DockerCon EU 2015: What is it we want in containers anyway?Docker, Inc.
 
Docker and containers : Disrupting the virtual machine(VM)
Docker and containers : Disrupting the virtual machine(VM)Docker and containers : Disrupting the virtual machine(VM)
Docker and containers : Disrupting the virtual machine(VM)Rama Krishna B
 
New in docker containercamp 2016
New in docker containercamp 2016New in docker containercamp 2016
New in docker containercamp 2016Mano Marks
 
ACM Gazi Docker?
ACM Gazi Docker?ACM Gazi Docker?
ACM Gazi Docker?kloia
 

Mais procurados (20)

Containers in depth – understanding how containers work to better work with c...
Containers in depth – understanding how containers work to better work with c...Containers in depth – understanding how containers work to better work with c...
Containers in depth – understanding how containers work to better work with c...
 
Docker introduction
Docker introductionDocker introduction
Docker introduction
 
Intro to Docker at the 2016 Evans Developer relations conference
Intro to Docker at the 2016 Evans Developer relations conferenceIntro to Docker at the 2016 Evans Developer relations conference
Intro to Docker at the 2016 Evans Developer relations conference
 
Introduction to containers running dockers using kubernetes - הרצאה לכנס מיק...
Introduction to containers  running dockers using kubernetes - הרצאה לכנס מיק...Introduction to containers  running dockers using kubernetes - הרצאה לכנס מיק...
Introduction to containers running dockers using kubernetes - הרצאה לכנס מיק...
 
Introduction to Docker
Introduction to DockerIntroduction to Docker
Introduction to Docker
 
Introduction to Docker
Introduction to DockerIntroduction to Docker
Introduction to Docker
 
Docker introduction & benefits
Docker introduction & benefitsDocker introduction & benefits
Docker introduction & benefits
 
Docker Containers Deep Dive
Docker Containers Deep DiveDocker Containers Deep Dive
Docker Containers Deep Dive
 
Docker Overview - Rise of the Containers
Docker Overview - Rise of the ContainersDocker Overview - Rise of the Containers
Docker Overview - Rise of the Containers
 
Docker taylor swift and protection v06
Docker taylor swift and protection v06Docker taylor swift and protection v06
Docker taylor swift and protection v06
 
Building microservices with docker
Building microservices with dockerBuilding microservices with docker
Building microservices with docker
 
Intro to docker - innovation demo 2022
Intro to docker - innovation demo 2022Intro to docker - innovation demo 2022
Intro to docker - innovation demo 2022
 
Introduction to Docker - 2017
Introduction to Docker - 2017Introduction to Docker - 2017
Introduction to Docker - 2017
 
Why Docker
Why DockerWhy Docker
Why Docker
 
Abc of docker
Abc of dockerAbc of docker
Abc of docker
 
Docker Basic to Advance
Docker Basic to AdvanceDocker Basic to Advance
Docker Basic to Advance
 
DockerCon EU 2015: What is it we want in containers anyway?
DockerCon EU 2015: What is it we want in containers anyway?DockerCon EU 2015: What is it we want in containers anyway?
DockerCon EU 2015: What is it we want in containers anyway?
 
Docker and containers : Disrupting the virtual machine(VM)
Docker and containers : Disrupting the virtual machine(VM)Docker and containers : Disrupting the virtual machine(VM)
Docker and containers : Disrupting the virtual machine(VM)
 
New in docker containercamp 2016
New in docker containercamp 2016New in docker containercamp 2016
New in docker containercamp 2016
 
ACM Gazi Docker?
ACM Gazi Docker?ACM Gazi Docker?
ACM Gazi Docker?
 

Semelhante a Getting started with docker (2017)

Docker up and Running For Web Developers
Docker up and Running For Web DevelopersDocker up and Running For Web Developers
Docker up and Running For Web DevelopersBADR
 
Docker Up and Running for Web Developers
Docker Up and Running for Web DevelopersDocker Up and Running for Web Developers
Docker Up and Running for Web DevelopersAmr Fawzy
 
Docker primer and tips
Docker primer and tipsDocker primer and tips
Docker primer and tipsSamuel Chow
 
Docker for developers
Docker for developersDocker for developers
Docker for developerssparkfabrik
 
Docker for developers
Docker for developersDocker for developers
Docker for developersDrupalDay
 
Adventures in docker compose
Adventures in docker composeAdventures in docker compose
Adventures in docker composeLinkMe Srl
 
Containerization using docker
Containerization using dockerContainerization using docker
Containerization using dockerVinod Doshi
 
Docker on Power Systems
Docker on Power SystemsDocker on Power Systems
Docker on Power SystemsCesar Maciel
 
Truemotion Adventures in Containerization
Truemotion Adventures in ContainerizationTruemotion Adventures in Containerization
Truemotion Adventures in ContainerizationRyan Hunter
 
Powercoders · Docker · Fall 2021.pptx
Powercoders · Docker · Fall 2021.pptxPowercoders · Docker · Fall 2021.pptx
Powercoders · Docker · Fall 2021.pptxIgnacioTamayo2
 
Introduction to Docker Container
Introduction to Docker ContainerIntroduction to Docker Container
Introduction to Docker ContainerSamsul Ma'arif
 
DevAssistant, Docker and You
DevAssistant, Docker and YouDevAssistant, Docker and You
DevAssistant, Docker and YouBalaBit
 
Real-World Docker: 10 Things We've Learned
Real-World Docker: 10 Things We've Learned  Real-World Docker: 10 Things We've Learned
Real-World Docker: 10 Things We've Learned RightScale
 
Introduction to Docker and Monitoring with InfluxData
Introduction to Docker and Monitoring with InfluxDataIntroduction to Docker and Monitoring with InfluxData
Introduction to Docker and Monitoring with InfluxDataInfluxData
 

Semelhante a Getting started with docker (2017) (20)

Docker up and Running For Web Developers
Docker up and Running For Web DevelopersDocker up and Running For Web Developers
Docker up and Running For Web Developers
 
Docker Up and Running for Web Developers
Docker Up and Running for Web DevelopersDocker Up and Running for Web Developers
Docker Up and Running for Web Developers
 
Docker primer and tips
Docker primer and tipsDocker primer and tips
Docker primer and tips
 
Run automated tests in Docker
Run automated tests in DockerRun automated tests in Docker
Run automated tests in Docker
 
Docker for developers
Docker for developersDocker for developers
Docker for developers
 
Docker for developers
Docker for developersDocker for developers
Docker for developers
 
Docker 101
Docker 101Docker 101
Docker 101
 
Docker+java
Docker+javaDocker+java
Docker+java
 
JOSA TechTalks - Docker in Production
JOSA TechTalks - Docker in ProductionJOSA TechTalks - Docker in Production
JOSA TechTalks - Docker in Production
 
Adventures in docker compose
Adventures in docker composeAdventures in docker compose
Adventures in docker compose
 
Containerization using docker
Containerization using dockerContainerization using docker
Containerization using docker
 
Docker on Power Systems
Docker on Power SystemsDocker on Power Systems
Docker on Power Systems
 
Docker Birtday #5
Docker Birtday #5Docker Birtday #5
Docker Birtday #5
 
Truemotion Adventures in Containerization
Truemotion Adventures in ContainerizationTruemotion Adventures in Containerization
Truemotion Adventures in Containerization
 
Powercoders · Docker · Fall 2021.pptx
Powercoders · Docker · Fall 2021.pptxPowercoders · Docker · Fall 2021.pptx
Powercoders · Docker · Fall 2021.pptx
 
Introduction to Docker Container
Introduction to Docker ContainerIntroduction to Docker Container
Introduction to Docker Container
 
DevAssistant, Docker and You
DevAssistant, Docker and YouDevAssistant, Docker and You
DevAssistant, Docker and You
 
Real-World Docker: 10 Things We've Learned
Real-World Docker: 10 Things We've Learned  Real-World Docker: 10 Things We've Learned
Real-World Docker: 10 Things We've Learned
 
Introduction to Docker and Monitoring with InfluxData
Introduction to Docker and Monitoring with InfluxDataIntroduction to Docker and Monitoring with InfluxData
Introduction to Docker and Monitoring with InfluxData
 
Docker for dev
Docker for devDocker for dev
Docker for dev
 

Mais de JEMLI Fathi

Why docker is taking over the world (docker birthday 2019)
Why docker is taking over the world (docker birthday 2019)Why docker is taking over the world (docker birthday 2019)
Why docker is taking over the world (docker birthday 2019)JEMLI Fathi
 
Mean Stack for Beginners
Mean Stack for BeginnersMean Stack for Beginners
Mean Stack for BeginnersJEMLI Fathi
 
Analyse des reseaux sociaux et détection des communautés en ligne
Analyse des reseaux sociaux et détection des communautés en ligneAnalyse des reseaux sociaux et détection des communautés en ligne
Analyse des reseaux sociaux et détection des communautés en ligneJEMLI Fathi
 
Découverte de Elastic search
Découverte de Elastic searchDécouverte de Elastic search
Découverte de Elastic searchJEMLI Fathi
 
Big data: NoSQL comme solution
Big data: NoSQL comme solutionBig data: NoSQL comme solution
Big data: NoSQL comme solutionJEMLI Fathi
 
Découverte de Redis
Découverte de RedisDécouverte de Redis
Découverte de RedisJEMLI Fathi
 

Mais de JEMLI Fathi (7)

Why docker is taking over the world (docker birthday 2019)
Why docker is taking over the world (docker birthday 2019)Why docker is taking over the world (docker birthday 2019)
Why docker is taking over the world (docker birthday 2019)
 
Gitlab CI/CD
Gitlab CI/CDGitlab CI/CD
Gitlab CI/CD
 
Mean Stack for Beginners
Mean Stack for BeginnersMean Stack for Beginners
Mean Stack for Beginners
 
Analyse des reseaux sociaux et détection des communautés en ligne
Analyse des reseaux sociaux et détection des communautés en ligneAnalyse des reseaux sociaux et détection des communautés en ligne
Analyse des reseaux sociaux et détection des communautés en ligne
 
Découverte de Elastic search
Découverte de Elastic searchDécouverte de Elastic search
Découverte de Elastic search
 
Big data: NoSQL comme solution
Big data: NoSQL comme solutionBig data: NoSQL comme solution
Big data: NoSQL comme solution
 
Découverte de Redis
Découverte de RedisDécouverte de Redis
Découverte de Redis
 

Último

CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Bhuvaneswari Subramani
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 

Último (20)

CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 

Getting started with docker (2017)

  • 1.
  • 2. About me Fathi Jemli ● Software engineer @ Proxym-IT ● DevOps and Big Data enthusiast Em@il: jemlifathi2013@gmail.com Twitter: @jemlifathi
  • 3. 2017 Trends ● Microservices ● Cloud Computing ● Server less development ● Environment independent development ● Analytics ● Big Data ● DevOps: CI/CD, Automation, Monitoring, etc.
  • 5. Nowadays applications needs many technologies
  • 8. You have to take into consideration ● Technologies requirements ● Compatibility ● Portability: build once, run everywhere ● Keeping your system clean and healthy ● Performance
  • 10. OMG! I hate my job!
  • 11. What We Need A solution to run each technology on its own environment, without worrying about its compatibility, test, integration and portability.
  • 12. Solutions over time ● Virtual machines ● Free BSD jails ● Solaris zones ● LXC: Linux containers
  • 13. What Are Containers ● Container is a standard format ● Operating System virtualization ● Isolated user space instances in term of process and file system ● Shares host Linux kernel ● Easily portable across environment ● Packages up software binaries and dependencies
  • 15. Docker in 2013 A lightweight runtime and robust tooling to build and run virtual containers on Linux to create the operating environment for your distributed applications.
  • 16. Docker in 2017 A Containers as a Service (CaaS) platform which enables an IT Ops managed and secure application environment (infrastructure and content) for developer self service to build and deploy applications.
  • 21. Docker image ● A static definition of a container ● An image is a stack of reusable image layers ● An image have a base image ● Image properties: ○ Name ○ Tag ( by default “latest”) ○ Id ○ Size
  • 23. docker pull: pulling existing image ● docker pull java:8 ● docker pull alpine:3.5 ● Docker pull redis Docker image Dockerfile: definition of an image FROM node:6.3.1 maintainer jemlifathi # Create app directory RUN mkdir -p /usr/src/app WORKDIR /usr/src/app RUN npm install nodemon -g RUN npm install pm2 -g # Install app dependencies COPY package.json /usr/src/app CMD npm install EXPOSE 3000 docker build: building an image $>docker build -t my-image relative_path_to_folder_containing_Docker file
  • 24. Docker container ● An instance of an image ● We can create many containers out of one image ● An image have a base image ● Container properties ○ Id ○ Status ○ Command, etc ● Container/machine interaction: ○ Volumes ○ Ports, etc
  • 25. Docker container Example: running a container ● docker run -it --name ubuntu-14 ubuntu:14.04 /bin/bash ● docker run -d --name webserver -v $(PWD)/webapp/:/usr/share/nginx/html -p 80:80 nginx ● docker run --name db -d -v $(PWD)/data/:/var/lib/mysql -p 3307:3306 -e MYSQL_ROOT_PASSWORD=passwd -e MYSQL_DATABASE=test mysql:5.6 ● docker run --name cache -d -p 6380:6379 -v $(PWD)/cache/:/data redis ● docker run --name backend -d -p 3000:3000 -v $(PWD)/backend/:/src/app/ -- link cache:cache --link db:db npm start ---------------------------------------------------------------------------------------------------------------------------------- - ● docker ps (-alq)
  • 26. Docker Compose Docker Compose let you define, automate and run multi-container applications.
  • 27. Docker Compose You define your architecture (services, networks, etc) in a “docker- compose.yml” file and Docker Compose validate your configuration, starts your multi container app. docker-compose.yml
  • 28. Docker Cloud Docker Data Center brings container management and deployment to enterprises with a production ready platform supported by Docker.
  • 30. Statistics About Docker (2016) ● 2B+ Docker Image pulls ● 2000+ contributors ● 47K+ GitHub stars ● 200K+ Dockerized Apps ● 240 Meetups in 70 countries ● 95K+ Meetup Members
  • 34. Try to keep your containers like this

Notas do Editor

  1. Server less development, ex: mongolab, firebase, redis-labs Automation: script shell -> Jenkins, Ansible