SlideShare uma empresa Scribd logo
1 de 18
Baixar para ler offline
Docker
● An open platform for distributed applications for
developers and sysadmins
● Docker Containers as a Service (CaaS)
Máquina física vs VM vs Container
Container
● Somente o KERNEL é compartilhado com o HOST
● Não roda outro SO dentro da máquina HOST
● Os processos tem PID visíveis apenas dentro do
container (vale também para disco, usuários, rede,
etc)
● Todo esse isolamento é possível graças ao kernel
do Linux, usando features como kernel
namespaces, cgroups etc.
DOCKER
● Escrito em Go Language
● Em 2013 a Dot Cloud compartilhou a
ferramenta que utilizava para gerenciar seus
containers e o batizou de Docker.
Posteriormente a empresa adotou o nome da
ferramenta, devido ao grande sucesso da
mesma.
Criador do Docker
Solomon Hykes
Quem usa?
Iniciando com o Docker
● Atenção: Kernel 3.8+
$ uname -r
● Instalando
$ sudo apt-get update
$ sudo apt-get install docker.io
$ sudo ln -sf /usr/bin/docker.io /usr/local/bin/docker
$ service docker start
$ ps -ef | grep docker
Comandos básicos
$ docker ps
● Este comando lista as imagens que estão em execução
$ docker images
● Lista as imagens Docker disponíveis para execução
$ docker run -i -t debian:stable /bin/bash
– Os parâmetros usados neste exemplo:
●
-i container interativo
●
-t cria um pseudo-TTY para stdin e stdout
Docker Hub
● Dev-test pipeline automation, 100,000+ free
apps, public and private registries
Comandos básicos
● Para sair do bash de um container, deve
apertar a sequência CTRL + P + Q
● Para retornar ao container:
$ docker ps
$ docker attach {CONTAINER_ID}
Começando a brincadeira
● Servidor Nginx no container Docker
$ docker run -i -t -p 8080:80 debian:stable /bin/bash
root@12hghgg12g:# apt-get install nginx
root@12hghgg12g:# /etc/init.d/ngnix start
root@12hghgg12g:# ps -ef
Porta 8080 do host (máquina física)
apontando para a porta 80 do container
Alterações nas imagens Docker
● Tudo que foi feito anteriormente, caso seja
encerrado o bash (CTRL+D ou exit), será
perdido!
Commits
● Verificando as mudanças no container e
criando a sua primeira imagem
$ docker diff {{container_id}}
$ docker commit {{container_id}} nginx/debian:1.0

Mais conteúdo relacionado

Mais procurados

Mais procurados (20)

Docker: uma visão geral e exemplos de uso
Docker: uma visão geral e exemplos de usoDocker: uma visão geral e exemplos de uso
Docker: uma visão geral e exemplos de uso
 
Introdução à plataforma Docker
Introdução à plataforma DockerIntrodução à plataforma Docker
Introdução à plataforma Docker
 
Talk no Meetup LaravelSP #3
Talk no Meetup LaravelSP #3Talk no Meetup LaravelSP #3
Talk no Meetup LaravelSP #3
 
Docker: uma visão geral
Docker: uma visão geralDocker: uma visão geral
Docker: uma visão geral
 
Vagrant vs docker? Melhor vagrant + docker
Vagrant vs docker? Melhor vagrant + dockerVagrant vs docker? Melhor vagrant + docker
Vagrant vs docker? Melhor vagrant + docker
 
Apresentacao docker
Apresentacao dockerApresentacao docker
Apresentacao docker
 
Introdução ao docker
Introdução ao dockerIntrodução ao docker
Introdução ao docker
 
Docker volumes
Docker volumesDocker volumes
Docker volumes
 
Verdades que não querem te contar sobre Docker
Verdades que não querem te contar sobre DockerVerdades que não querem te contar sobre Docker
Verdades que não querem te contar sobre Docker
 
Um milhao de usuários simultâneos
Um milhao de usuários simultâneosUm milhao de usuários simultâneos
Um milhao de usuários simultâneos
 
Introdução a Containers Docker
Introdução a Containers DockerIntrodução a Containers Docker
Introdução a Containers Docker
 
5. rodando containers docker na aws
5. rodando containers docker na aws5. rodando containers docker na aws
5. rodando containers docker na aws
 
O que é docker?
O que é docker?O que é docker?
O que é docker?
 
Desenvolvendo com PHP e Docker
Desenvolvendo com PHP e DockerDesenvolvendo com PHP e Docker
Desenvolvendo com PHP e Docker
 
TDC 2015 POA - O Fantástico Mundo de Docker
TDC 2015 POA - O Fantástico Mundo de DockerTDC 2015 POA - O Fantástico Mundo de Docker
TDC 2015 POA - O Fantástico Mundo de Docker
 
Container revolucao
Container revolucaoContainer revolucao
Container revolucao
 
O poder do Docker (7 Masters)
O poder do Docker (7 Masters)O poder do Docker (7 Masters)
O poder do Docker (7 Masters)
 
Freedomday2016 - Fique na caixinha, docker
Freedomday2016 - Fique na caixinha, dockerFreedomday2016 - Fique na caixinha, docker
Freedomday2016 - Fique na caixinha, docker
 
Orquestrando Docker Containers: Machine, Swarm e Compose
Orquestrando Docker Containers: Machine, Swarm e ComposeOrquestrando Docker Containers: Machine, Swarm e Compose
Orquestrando Docker Containers: Machine, Swarm e Compose
 
Testadores 2015 - O Fantástico Mundo de Docker
Testadores 2015 - O Fantástico Mundo de DockerTestadores 2015 - O Fantástico Mundo de Docker
Testadores 2015 - O Fantástico Mundo de Docker
 

Destaque

Indo para as nuvens mais rápido e fácil com Docker
Indo para as nuvens mais rápido e fácil com DockerIndo para as nuvens mais rápido e fácil com Docker
Indo para as nuvens mais rápido e fácil com Docker
Luan Cestari
 
Tcc rafael mazzei_v4
Tcc rafael mazzei_v4Tcc rafael mazzei_v4
Tcc rafael mazzei_v4
Rafael Mazzei
 
TCC - AUTOMATIZAÇÃO DE ENTREGA DE SOFTWARE EM AMBIENTE ÁGIL DE DESENVOLVIM...
TCC - AUTOMATIZAÇÃO DE ENTREGA DE SOFTWARE EM AMBIENTE ÁGIL DE DESENVOLVIM...TCC - AUTOMATIZAÇÃO DE ENTREGA DE SOFTWARE EM AMBIENTE ÁGIL DE DESENVOLVIM...
TCC - AUTOMATIZAÇÃO DE ENTREGA DE SOFTWARE EM AMBIENTE ÁGIL DE DESENVOLVIM...
Leandro Nunes
 

Destaque (20)

How to Make Awesome SlideShares: Tips & Tricks
How to Make Awesome SlideShares: Tips & TricksHow to Make Awesome SlideShares: Tips & Tricks
How to Make Awesome SlideShares: Tips & Tricks
 
Getting Started With SlideShare
Getting Started With SlideShareGetting Started With SlideShare
Getting Started With SlideShare
 
Cloud: Container Service In Action, por Heitor Vidal
Cloud: Container Service In Action, por Heitor VidalCloud: Container Service In Action, por Heitor Vidal
Cloud: Container Service In Action, por Heitor Vidal
 
Tcc obz -
Tcc obz - Tcc obz -
Tcc obz -
 
Serviços em nuvem para sua infraestrutura virtual
Serviços em nuvem para sua infraestrutura virtualServiços em nuvem para sua infraestrutura virtual
Serviços em nuvem para sua infraestrutura virtual
 
DevOps - melhores práticas e integração contínua
DevOps - melhores práticas e integração contínuaDevOps - melhores práticas e integração contínua
DevOps - melhores práticas e integração contínua
 
Global Azure Bootcamp 2015 Curitiba
Global Azure Bootcamp 2015 CuritibaGlobal Azure Bootcamp 2015 Curitiba
Global Azure Bootcamp 2015 Curitiba
 
Gerenciando Implementação de Projetos de CLOUD
Gerenciando Implementação de Projetos de CLOUDGerenciando Implementação de Projetos de CLOUD
Gerenciando Implementação de Projetos de CLOUD
 
Indo para as nuvens mais rápido e fácil com Docker
Indo para as nuvens mais rápido e fácil com DockerIndo para as nuvens mais rápido e fácil com Docker
Indo para as nuvens mais rápido e fácil com Docker
 
projeto_daniel
projeto_danielprojeto_daniel
projeto_daniel
 
Jenkins além da integração contínua - práticas de devops
Jenkins além da integração contínua - práticas de devopsJenkins além da integração contínua - práticas de devops
Jenkins além da integração contínua - práticas de devops
 
DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com 100% ...
DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com 100% ...DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com 100% ...
DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com 100% ...
 
TCC FGV - Diego Mendes Rodrigues
TCC FGV - Diego Mendes RodriguesTCC FGV - Diego Mendes Rodrigues
TCC FGV - Diego Mendes Rodrigues
 
Monografia-Devops
Monografia-DevopsMonografia-Devops
Monografia-Devops
 
Cultura DevOps e integração entre infra e devel
Cultura DevOps e integração entre infra e develCultura DevOps e integração entre infra e devel
Cultura DevOps e integração entre infra e devel
 
DevOps utilizando Docker
DevOps utilizando DockerDevOps utilizando Docker
DevOps utilizando Docker
 
DevOps II - Ambientes padronizados e Monitoramento da Aplicação | Monografia II
DevOps II - Ambientes padronizados e Monitoramento da Aplicação | Monografia IIDevOps II - Ambientes padronizados e Monitoramento da Aplicação | Monografia II
DevOps II - Ambientes padronizados e Monitoramento da Aplicação | Monografia II
 
Pré-banca TCC Informática
Pré-banca TCC InformáticaPré-banca TCC Informática
Pré-banca TCC Informática
 
Tcc rafael mazzei_v4
Tcc rafael mazzei_v4Tcc rafael mazzei_v4
Tcc rafael mazzei_v4
 
TCC - AUTOMATIZAÇÃO DE ENTREGA DE SOFTWARE EM AMBIENTE ÁGIL DE DESENVOLVIM...
TCC - AUTOMATIZAÇÃO DE ENTREGA DE SOFTWARE EM AMBIENTE ÁGIL DE DESENVOLVIM...TCC - AUTOMATIZAÇÃO DE ENTREGA DE SOFTWARE EM AMBIENTE ÁGIL DE DESENVOLVIM...
TCC - AUTOMATIZAÇÃO DE ENTREGA DE SOFTWARE EM AMBIENTE ÁGIL DE DESENVOLVIM...
 

Semelhante a Primeiros passos com o Docker

Semelhante a Primeiros passos com o Docker (20)

JavaDay2018 - Docker - Além do HelloWorld
JavaDay2018 - Docker - Além do HelloWorldJavaDay2018 - Docker - Além do HelloWorld
JavaDay2018 - Docker - Além do HelloWorld
 
TDC 2016 Floripa - Workshop docker
TDC 2016 Floripa - Workshop dockerTDC 2016 Floripa - Workshop docker
TDC 2016 Floripa - Workshop docker
 
Docker e suas tecnologias
Docker e suas tecnologiasDocker e suas tecnologias
Docker e suas tecnologias
 
Docker e suas tecnologias por @cesarnog
Docker e suas tecnologias por @cesarnogDocker e suas tecnologias por @cesarnog
Docker e suas tecnologias por @cesarnog
 
Docker 101 e Ambientes Imutáveis
Docker 101 e Ambientes Imutáveis Docker 101 e Ambientes Imutáveis
Docker 101 e Ambientes Imutáveis
 
Oficina docker
Oficina dockerOficina docker
Oficina docker
 
Docker Para Maiores - GDG Cabreúva
Docker Para Maiores - GDG CabreúvaDocker Para Maiores - GDG Cabreúva
Docker Para Maiores - GDG Cabreúva
 
Source-to-container no mundo real
Source-to-container no mundo realSource-to-container no mundo real
Source-to-container no mundo real
 
Docker - Tutorial for beginners
Docker - Tutorial for beginnersDocker - Tutorial for beginners
Docker - Tutorial for beginners
 
Docker do básico a orquestração (PHPeste2016)
Docker do básico a orquestração (PHPeste2016)Docker do básico a orquestração (PHPeste2016)
Docker do básico a orquestração (PHPeste2016)
 
Aulão de docker
Aulão de dockerAulão de docker
Aulão de docker
 
Docker
DockerDocker
Docker
 
Docker para maiores
Docker para maioresDocker para maiores
Docker para maiores
 
Docker - tutorial iniciantes
Docker - tutorial iniciantesDocker - tutorial iniciantes
Docker - tutorial iniciantes
 
Docker
DockerDocker
Docker
 
Olá docker
Olá dockerOlá docker
Olá docker
 
Ambiente de desenvolvimento com docker e ruby on rails
Ambiente de desenvolvimento com  docker e ruby on railsAmbiente de desenvolvimento com  docker e ruby on rails
Ambiente de desenvolvimento com docker e ruby on rails
 
Introdução ao docker
Introdução ao dockerIntrodução ao docker
Introdução ao docker
 
TDC2018SP | Trilha Containers - CRI-O: Nem so de Docker vivem os containers
TDC2018SP | Trilha Containers - CRI-O: Nem so de Docker vivem os containersTDC2018SP | Trilha Containers - CRI-O: Nem so de Docker vivem os containers
TDC2018SP | Trilha Containers - CRI-O: Nem so de Docker vivem os containers
 
Vamos falar de docker
Vamos falar de dockerVamos falar de docker
Vamos falar de docker
 

Último

Apresentação Power Embedded - Descubra uma nova forma de compartilhar relatór...
Apresentação Power Embedded - Descubra uma nova forma de compartilhar relatór...Apresentação Power Embedded - Descubra uma nova forma de compartilhar relatór...
Apresentação Power Embedded - Descubra uma nova forma de compartilhar relatór...
Dirceu Resende
 

Último (9)

From_SEH_Overwrite_with_Egg_Hunter_to_Get_a_Shell_PT-BR.pdf
From_SEH_Overwrite_with_Egg_Hunter_to_Get_a_Shell_PT-BR.pdfFrom_SEH_Overwrite_with_Egg_Hunter_to_Get_a_Shell_PT-BR.pdf
From_SEH_Overwrite_with_Egg_Hunter_to_Get_a_Shell_PT-BR.pdf
 
COI CENTRO DE OPERAÇÕES INDUSTRIAIS NAS USINAS
COI CENTRO DE OPERAÇÕES INDUSTRIAIS NAS USINASCOI CENTRO DE OPERAÇÕES INDUSTRIAIS NAS USINAS
COI CENTRO DE OPERAÇÕES INDUSTRIAIS NAS USINAS
 
O futuro e o impacto da tecnologia nas salas de aulas
O futuro e o impacto da tecnologia  nas salas de aulasO futuro e o impacto da tecnologia  nas salas de aulas
O futuro e o impacto da tecnologia nas salas de aulas
 
Entrevistas, artigos, livros & citações de Paulo Pagliusi
Entrevistas, artigos, livros & citações de Paulo PagliusiEntrevistas, artigos, livros & citações de Paulo Pagliusi
Entrevistas, artigos, livros & citações de Paulo Pagliusi
 
Apostila e caderno de exercicios de WORD
Apostila e caderno de exercicios de  WORDApostila e caderno de exercicios de  WORD
Apostila e caderno de exercicios de WORD
 
Palestras sobre Cibersegurança em Eventos - Paulo Pagliusi
Palestras sobre Cibersegurança em Eventos - Paulo PagliusiPalestras sobre Cibersegurança em Eventos - Paulo Pagliusi
Palestras sobre Cibersegurança em Eventos - Paulo Pagliusi
 
[ServiceNow] Upgrade de versão - 2ª edição (Revisada, atualizada e ampliada)
[ServiceNow] Upgrade de versão - 2ª edição (Revisada, atualizada e ampliada)[ServiceNow] Upgrade de versão - 2ª edição (Revisada, atualizada e ampliada)
[ServiceNow] Upgrade de versão - 2ª edição (Revisada, atualizada e ampliada)
 
EAD Curso - CIÊNCIA DE DADOS NA INDÚSTTRIA
EAD Curso - CIÊNCIA DE DADOS NA INDÚSTTRIAEAD Curso - CIÊNCIA DE DADOS NA INDÚSTTRIA
EAD Curso - CIÊNCIA DE DADOS NA INDÚSTTRIA
 
Apresentação Power Embedded - Descubra uma nova forma de compartilhar relatór...
Apresentação Power Embedded - Descubra uma nova forma de compartilhar relatór...Apresentação Power Embedded - Descubra uma nova forma de compartilhar relatór...
Apresentação Power Embedded - Descubra uma nova forma de compartilhar relatór...
 

Primeiros passos com o Docker

  • 1.
  • 2. Docker ● An open platform for distributed applications for developers and sysadmins ● Docker Containers as a Service (CaaS)
  • 3. Máquina física vs VM vs Container
  • 4. Container ● Somente o KERNEL é compartilhado com o HOST ● Não roda outro SO dentro da máquina HOST ● Os processos tem PID visíveis apenas dentro do container (vale também para disco, usuários, rede, etc) ● Todo esse isolamento é possível graças ao kernel do Linux, usando features como kernel namespaces, cgroups etc.
  • 5. DOCKER ● Escrito em Go Language ● Em 2013 a Dot Cloud compartilhou a ferramenta que utilizava para gerenciar seus containers e o batizou de Docker. Posteriormente a empresa adotou o nome da ferramenta, devido ao grande sucesso da mesma.
  • 8.
  • 9.
  • 10.
  • 11. Iniciando com o Docker ● Atenção: Kernel 3.8+ $ uname -r ● Instalando $ sudo apt-get update $ sudo apt-get install docker.io $ sudo ln -sf /usr/bin/docker.io /usr/local/bin/docker $ service docker start $ ps -ef | grep docker
  • 12. Comandos básicos $ docker ps ● Este comando lista as imagens que estão em execução $ docker images ● Lista as imagens Docker disponíveis para execução $ docker run -i -t debian:stable /bin/bash – Os parâmetros usados neste exemplo: ● -i container interativo ● -t cria um pseudo-TTY para stdin e stdout
  • 13. Docker Hub ● Dev-test pipeline automation, 100,000+ free apps, public and private registries
  • 14. Comandos básicos ● Para sair do bash de um container, deve apertar a sequência CTRL + P + Q ● Para retornar ao container: $ docker ps $ docker attach {CONTAINER_ID}
  • 15. Começando a brincadeira ● Servidor Nginx no container Docker $ docker run -i -t -p 8080:80 debian:stable /bin/bash root@12hghgg12g:# apt-get install nginx root@12hghgg12g:# /etc/init.d/ngnix start root@12hghgg12g:# ps -ef Porta 8080 do host (máquina física) apontando para a porta 80 do container
  • 16. Alterações nas imagens Docker ● Tudo que foi feito anteriormente, caso seja encerrado o bash (CTRL+D ou exit), será perdido!
  • 17.
  • 18. Commits ● Verificando as mudanças no container e criando a sua primeira imagem $ docker diff {{container_id}} $ docker commit {{container_id}} nginx/debian:1.0