SlideShare uma empresa Scribd logo
Vamos entrar na caxinha
Eustáquio Mendes Guimarães
Entrar na caxinha em vez de
sair?
Entrar na caxinha em vez de
sair?
O que é docker ? História
Docker é um projeto open source (Apache License 2.0) para
empacotar, enviar e executar diversas aplicações em
containers.
Containers docker são estruturas de hardware e plataforma
que podem ser executadas em diversos ambientes, desde o
notebook até ambientes em nuvem - não requer que se
utilize uma linguagem, framework ou sistema de pacotes
específico. Isto os torna uma ferramenta para deploy e
escalabilidade de aplicativos web, bancos de dados e
serviços de backend sem depender de um provedor em
particular.
O que é docker ? História
O primeiro anúncio do Docker foi feito em 15 de Março de
2013 em um lighting talk por Solomon Hykes, CEO da
dorCloud em uma coferência de Phyton, sendo liberado,
como uma engine para deploy.
E em abril de 2015 a empresa já vale 1 bilhão de dólares.
Em outubro de 2015 já existem vários projetos: Docker
Compose, Docker Swarm, Docker Hub Enterprise, Docker
Machine, Docker engine, Docker Hub, Docker Registry,
Kitematic.
E antes ? História
Virtualização como um todo
● Mainframes (1970 -)
● Linux (1995 -)
● VMWare (~ 1999)
● User Mode Linux (2003 -)
● Provedores de VPS
● LXC
● Xen (2004 -)
● Amazon EC2 (2006 -)
● Software-Defined Networking (2008 -)
● OpenStack (2010 -)
● Dotcloud / Docker (2012 - )
O que são containers?
Quando o kernel do sistema operacional é capaz
de permitir múltiplas instâncias isoladas em
user-space, ao invés de somente uma, cada
instância pode ser chamada de container ou
software container).
Por compartilharem o mesmo kernel e parte dos
recursos, containers consomem muito menos
recursos do que uma máquina virtual.
VMs vs. Containers
Tecnologia de virtualização do
Docker
Tecnologia de virtualização do
Docker
Funcionamento
Quando o kernel do sistema operacional é capaz de permitir
múltiplas instâncias isoladas em user-space, ao invés de somente
uma, cada instância pode ser chamada de container ou software
container).
Por compartilharem o mesmo kernel e parte dos recursos,
containers consomem muito menos recursos do que uma máquina
virtual.
Tecnologia de virtualização do
Docker
Por que utilizar ? ? ?
* Rápida aprendizagem/utilização se comparado com outras
tecnologias de containers (LXC, cgroups, etc)
* Comunidade muito ativa
* Repositório publico de imagens, com compartilhamento e
colaboração
* Integração com ferramentas de DevOps (Zabbix, Puppet, Chef,
Vagrant, Ansible)
* Excelente desempenho e economia de recursos (espaço em
disco, processamento, memória)
* Versionamento de imagens e cache
Mas tem muita gente utilizando ? ? ?
Mas tem muita gente utilizando ? ? ?
* Juntamente com a cultura de DevOps, permite que você possa mais facilmente
utilizar ferramentas top de linha (linguagens, bibliotecas, etc) pois o ambiente já
está pronto para ser provisionado e, querendo ou não, algum nível de
documentação já foi gerado
* Precisa de outro sistema operacional ou distribuições além do GNU/Linux
* Personalização da imagem que será construída (ex.: Debian)
* Aumento da curva de aprendizagem (imagens personalizadas, logs, cron, rede)
E por que devo entrar nessa caxinha ?
* Constante evolução (ex.: rede)
* Agiliza a entrega de software
* Aumenta a agilidade de correção. É muito mais fácil e preciso reenviar um
container completo (que já passou cliclo docker) do que enviar um patch em um
arquitetura monolítica.
* Para implementá-lo é necessário que as várias áreas da empresa contribuam, o
que gera DevOps na prática.
E por que devo entrar nessa caxinha ?
E por que devo entrar nessa caxinha ?
E como utilizar ?
* docker create cria um container mas não o inicia
* docker run cria e inicia um container em apenas uma operação
* docker stop para um container
* docker start inicia um container já criado
* docker restart reinicia um container
* docker rm deleta um container
* docker kill envia um SIGKILL para o container
* docker attach irá conectar a um container em execução
* docker wait aguarda até que o container pare
E como utilizar ?
* docker ps exibe os containers em execução (-a para todos)
* docker logs obtém logs a patir do container (saída)
* docker inspect visualiza todas as informações de um container
(notavelmente o endereço IP)
* docker events exibe os eventos a partir do daemon em tempo real
* docker port exibe mapeamento de portas (NAT)
* docker top exibe os processos em execução no container
* docker stats exibe estatísticas da utilização de recursos no container
* docker diff exibe arquivos alterados no sistema de arquivos do
container
E vamos utilizando . . .
* docker cp copia arquivos ou diretórios entre o container e o sistema de
arquivos local
* docker export -o arquivo.tar nome_container exporta o sistema de
arquivos do container para um tarball
* docker exec executa comandos em um container
Ufa… mais ???
* docker images exibe todas as imagens
* docker import importa uma imagem de um arquivo tar
* docker build cria uma imagem a partir de um Dockerfile
* docker commit cria uma imagem a patir de um container
* docker rmi remove uma imagem
* docker load carrega uma imagem a partir de um arquivo tar, incluindo
camadas e tags
* docker save salva uma imagem em um arquivo tar com todas as camadas, tags
e versões
* docker history exibe o histórico de uma imagem
* docker tag renomeia a imagem (localmente ou no hub).
Poxa, não tem nada com o
mouse? :(
Poxa, não tem nada com o
mouse? :(
Poxa, não tem nada com o
mouse? :(
Poxa, não tem nada com o
mouse? :(
E funciona legal ???
Xhost +
docker run -d -p 9000:9000 --privileged -v /var/run/docker.sock:/var/run/docker.sock uifd/ui-for-docker
DockerUI – localhost:9000
# CLI
docker run -d php:7 php -v
# interactive shell
docker run -d -it php:7
# webserver
docker run -d -p 8080:8080 -v $PWD:/usr/src/myapp php:7 php -S 0.0.0.0:8080 -t /usr/src/myapp
docker run --name db -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 -d mysql
docker run -it --net host --cpuset-cpus 0 -m 512mb -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=unix$DISPLAY -v
/dev/snd:/dev/snd --privileged --name chrome jess/chrome
docker run -d 
--name firefox 
-e DISPLAY=$DISPLAY 
-v /tmp/.X11-unix:/tmp/.X11-unix 
kennethkl/firefox
docker run -d 
--name firefox 
-e DISPLAY=$DISPLAY 
-v /tmp/.X11-unix:/tmp/.X11-unix 
kennethkl/firefox
docker run -it 
--rm -e DISPLAY=$DISPLAY 
-v /tmp/.X11-unix:/tmp/.X11-unix 
jarfil/gimp-git
docker run 
--volume=/:/rootfs:ro 
--volume=/var/run:/var/run:rw 
--volume=/sys:/sys:ro 
--volume=/var/lib/docker/:/var/lib/docker:ro 
--publish=8080:8080 
--detach=true 
--name=cadvisor 
google/cadvisor:latest
E funciona legal ???
Então, isso é ….
Busque!
E outros . . .
Busque!
E outros . . .
Busque!
E outros . . .
✔ https://www.meetup.com/pt-BR/Docker-Meetup/ - Meetup do DockerDF
✔ https://telegram.me/dockerbr - Dockerbr - Telegram
✔ https://www.facebook.com/dockerdf - Facebook - DockerDF
✔ https://www.facebook.com/groups/806364762728291 - Facebook - DockerBR
✔ http://www.mundodocker.com.br/ - Site muito legal
✔ https://youtu.be/wW9CAH9nSLs - Palestra de Solomon Hykes
✔ https://www.docker.com - Site oficial
✔ https://leanpub.com/dockerparadesenvolvedores - Livro do Gomex
✔ http://techfree.com.br/ - Site do Gomex
✔ https://training.docker.com/ - Treinamento do Docker
✔ http://devops-br.org/ - Devops Brasil
✔ https://en.wikipedia.org/wiki/Operating-system-level_virtualization
✔ http://doger.io
✔ https://en.wikipedia.org/wiki/Docker_%28software%29
✔ http://docs.master.dockerproject.org/
✔ http://www.forbes.com/sites/alexkonrad/2015/04/14/docker-raises-95-million-at-
billion-valuation/
Dúvidas?
Contato:
FIM
Ou não …
Dúvidas?
Contato:
eustaquio.guimaraes@gmail.com
Não …

Mais conteúdo relacionado

Mais procurados

Docker - minicurso utfpr 2017
Docker -  minicurso utfpr 2017Docker -  minicurso utfpr 2017
Docker - minicurso utfpr 2017Fabio Janiszevski
 
Docker, facilitando a vida do desenvolvimento
Docker, facilitando a vida do desenvolvimentoDocker, facilitando a vida do desenvolvimento
Docker, facilitando a vida do desenvolvimentoSérgio Lima
 
Docker: Primeiros Passos, Dicas e Truques no Gerenciamento de Containers - Ab...
Docker: Primeiros Passos, Dicas e Truques no Gerenciamento de Containers - Ab...Docker: Primeiros Passos, Dicas e Truques no Gerenciamento de Containers - Ab...
Docker: Primeiros Passos, Dicas e Truques no Gerenciamento de Containers - Ab...Renato Groff
 
Introdução a Containers Docker
Introdução a Containers DockerIntrodução a Containers Docker
Introdução a Containers DockerMatheus Fidelis
 
Vagrant & Docker: carregue seus ambientes no bolso
Vagrant & Docker: carregue seus ambientes no bolsoVagrant & Docker: carregue seus ambientes no bolso
Vagrant & Docker: carregue seus ambientes no bolsoDiogo Lucas
 
São paulo docker meetup #2
São paulo docker meetup #2São paulo docker meetup #2
São paulo docker meetup #2Azuki
 
Docker na vida real
Docker na vida realDocker na vida real
Docker na vida realFernando Ike
 
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 DockerLuís Bianchin
 
Apresentação Docker
Apresentação DockerApresentação Docker
Apresentação DockerAndré Justi
 
Desenvolvendo e implantando aplicações PHP utilizando Docker
Desenvolvendo e implantando aplicações PHP utilizando DockerDesenvolvendo e implantando aplicações PHP utilizando Docker
Desenvolvendo e implantando aplicações PHP utilizando DockerBruno Ricardo Siqueira
 

Mais procurados (20)

Introdução à plataforma Docker
Introdução à plataforma DockerIntrodução à plataforma Docker
Introdução à plataforma Docker
 
Docker - minicurso utfpr 2017
Docker -  minicurso utfpr 2017Docker -  minicurso utfpr 2017
Docker - minicurso utfpr 2017
 
Apresentacao docker
Apresentacao dockerApresentacao docker
Apresentacao docker
 
Oficina docker
Oficina dockerOficina docker
Oficina docker
 
Docker
DockerDocker
Docker
 
Bem vindo ao Docker
Bem vindo ao DockerBem vindo ao Docker
Bem vindo ao Docker
 
Docker, facilitando a vida do desenvolvimento
Docker, facilitando a vida do desenvolvimentoDocker, facilitando a vida do desenvolvimento
Docker, facilitando a vida do desenvolvimento
 
Iniciando com docker
Iniciando com dockerIniciando com docker
Iniciando com docker
 
Docker: Primeiros Passos, Dicas e Truques no Gerenciamento de Containers - Ab...
Docker: Primeiros Passos, Dicas e Truques no Gerenciamento de Containers - Ab...Docker: Primeiros Passos, Dicas e Truques no Gerenciamento de Containers - Ab...
Docker: Primeiros Passos, Dicas e Truques no Gerenciamento de Containers - Ab...
 
Introdução a Containers Docker
Introdução a Containers DockerIntrodução a Containers Docker
Introdução a Containers Docker
 
Vagrant & Docker: carregue seus ambientes no bolso
Vagrant & Docker: carregue seus ambientes no bolsoVagrant & Docker: carregue seus ambientes no bolso
Vagrant & Docker: carregue seus ambientes no bolso
 
São paulo docker meetup #2
São paulo docker meetup #2São paulo docker meetup #2
São paulo docker meetup #2
 
O que é docker?
O que é docker?O que é docker?
O que é docker?
 
Docker na vida real
Docker na vida realDocker na vida real
Docker na vida real
 
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
 
Introdução ao docker
Introdução ao dockerIntrodução ao docker
Introdução ao docker
 
Apresentação Docker
Apresentação DockerApresentação Docker
Apresentação Docker
 
5. rodando containers docker na aws
5. rodando containers docker na aws5. rodando containers docker na aws
5. rodando containers docker na aws
 
Desenvolvendo e implantando aplicações PHP utilizando Docker
Desenvolvendo e implantando aplicações PHP utilizando DockerDesenvolvendo e implantando aplicações PHP utilizando Docker
Desenvolvendo e implantando aplicações PHP utilizando Docker
 
Docker - Básico
Docker - BásicoDocker - Básico
Docker - Básico
 

Destaque (9)

Visão rápida sobre o SCRUM
Visão rápida sobre o SCRUMVisão rápida sobre o SCRUM
Visão rápida sobre o SCRUM
 
Faculdade jk
Faculdade jkFaculdade jk
Faculdade jk
 
Puppet overview
Puppet overviewPuppet overview
Puppet overview
 
Debiandaydf 2014
Debiandaydf 2014Debiandaydf 2014
Debiandaydf 2014
 
Freedomday - Fajesu - 2013
Freedomday - Fajesu - 2013Freedomday - Fajesu - 2013
Freedomday - Fajesu - 2013
 
Guia do Papel e Responsabilidade do Scrum Master
Guia do Papel e Responsabilidade do Scrum MasterGuia do Papel e Responsabilidade do Scrum Master
Guia do Papel e Responsabilidade do Scrum Master
 
Scrum guide-portuguese-br
Scrum guide-portuguese-brScrum guide-portuguese-br
Scrum guide-portuguese-br
 
Apostila Scrum: Fundamentos do Scrum
Apostila Scrum: Fundamentos do ScrumApostila Scrum: Fundamentos do Scrum
Apostila Scrum: Fundamentos do Scrum
 
Um guia definitivo para o Scrum em Português
Um guia definitivo para o Scrum em PortuguêsUm guia definitivo para o Scrum em Português
Um guia definitivo para o Scrum em Português
 

Semelhante a Freedomday2016 - Fique na caixinha, docker

Docker e suas tecnologias por @cesarnog
Docker e suas tecnologias por @cesarnogDocker e suas tecnologias por @cesarnog
Docker e suas tecnologias por @cesarnogCesar Augusto Nogueira
 
Treinamento Docker Básico
Treinamento Docker BásicoTreinamento Docker Básico
Treinamento Docker BásicoAndré Justi
 
Introdução-a-Docker-compactado.pdf
Introdução-a-Docker-compactado.pdfIntrodução-a-Docker-compactado.pdf
Introdução-a-Docker-compactado.pdfdadalt1
 
Container revolucao
Container revolucaoContainer revolucao
Container revolucaoFernando Ike
 
Introdução ao docker
Introdução ao dockerIntrodução ao docker
Introdução ao dockerBenicio Ávila
 
Usp codelabs (docker)
Usp codelabs (docker)Usp codelabs (docker)
Usp codelabs (docker)TechCobli
 
Re pensando-virtualização-através-linux containers
Re pensando-virtualização-através-linux containersRe pensando-virtualização-através-linux containers
Re pensando-virtualização-através-linux containersFrancisco Gonçalves
 
TDC 2016 Floripa - Workshop docker
TDC 2016 Floripa - Workshop dockerTDC 2016 Floripa - Workshop docker
TDC 2016 Floripa - Workshop dockerRafael Gomes
 
Desenvolvimento em .NET utilizando Docker - Meetup 8 Itu Developers
Desenvolvimento em .NET utilizando Docker - Meetup 8 Itu DevelopersDesenvolvimento em .NET utilizando Docker - Meetup 8 Itu Developers
Desenvolvimento em .NET utilizando Docker - Meetup 8 Itu DevelopersDextra Sistemas / Etec Itu
 
PHP Experience 2016 - [Palestra] Vagrant, LXC, Docker, etc: Entenda as difere...
PHP Experience 2016 - [Palestra] Vagrant, LXC, Docker, etc: Entenda as difere...PHP Experience 2016 - [Palestra] Vagrant, LXC, Docker, etc: Entenda as difere...
PHP Experience 2016 - [Palestra] Vagrant, LXC, Docker, etc: Entenda as difere...iMasters
 
Workshop Microservices - Distribuindo os Microservices com Docker e Kubernetes
Workshop Microservices - Distribuindo os Microservices com Docker e KubernetesWorkshop Microservices - Distribuindo os Microservices com Docker e Kubernetes
Workshop Microservices - Distribuindo os Microservices com Docker e KubernetesRodrigo Cândido da Silva
 
Transportando as aplicações entre vários ambientes com Docker
Transportando as aplicações entre vários ambientes com DockerTransportando as aplicações entre vários ambientes com Docker
Transportando as aplicações entre vários ambientes com DockerAécio Pires
 

Semelhante a Freedomday2016 - Fique na caixinha, docker (20)

Docker e suas tecnologias por @cesarnog
Docker e suas tecnologias por @cesarnogDocker e suas tecnologias por @cesarnog
Docker e suas tecnologias por @cesarnog
 
Docker e suas tecnologias
Docker e suas tecnologiasDocker e suas tecnologias
Docker e suas tecnologias
 
Olá docker
Olá dockerOlá docker
Olá docker
 
Treinamento Docker Básico
Treinamento Docker BásicoTreinamento Docker Básico
Treinamento Docker Básico
 
Introdução-a-Docker-compactado.pdf
Introdução-a-Docker-compactado.pdfIntrodução-a-Docker-compactado.pdf
Introdução-a-Docker-compactado.pdf
 
Container revolucao
Container revolucaoContainer revolucao
Container revolucao
 
Docker
DockerDocker
Docker
 
Introdução ao docker
Introdução ao dockerIntrodução ao docker
Introdução ao docker
 
Usp codelabs (docker)
Usp codelabs (docker)Usp codelabs (docker)
Usp codelabs (docker)
 
Aulão de docker
Aulão de dockerAulão de docker
Aulão de docker
 
Docker e vagrant para mortais
Docker e vagrant para mortaisDocker e vagrant para mortais
Docker e vagrant para mortais
 
Re pensando-virtualização-através-linux containers
Re pensando-virtualização-através-linux containersRe pensando-virtualização-através-linux containers
Re pensando-virtualização-através-linux containers
 
Conheça o Docker
Conheça o DockerConheça o Docker
Conheça o Docker
 
Docker
DockerDocker
Docker
 
TDC 2016 Floripa - Workshop docker
TDC 2016 Floripa - Workshop dockerTDC 2016 Floripa - Workshop docker
TDC 2016 Floripa - Workshop docker
 
Usando Docker no desenvolvimento .NET
Usando Docker no desenvolvimento .NETUsando Docker no desenvolvimento .NET
Usando Docker no desenvolvimento .NET
 
Desenvolvimento em .NET utilizando Docker - Meetup 8 Itu Developers
Desenvolvimento em .NET utilizando Docker - Meetup 8 Itu DevelopersDesenvolvimento em .NET utilizando Docker - Meetup 8 Itu Developers
Desenvolvimento em .NET utilizando Docker - Meetup 8 Itu Developers
 
PHP Experience 2016 - [Palestra] Vagrant, LXC, Docker, etc: Entenda as difere...
PHP Experience 2016 - [Palestra] Vagrant, LXC, Docker, etc: Entenda as difere...PHP Experience 2016 - [Palestra] Vagrant, LXC, Docker, etc: Entenda as difere...
PHP Experience 2016 - [Palestra] Vagrant, LXC, Docker, etc: Entenda as difere...
 
Workshop Microservices - Distribuindo os Microservices com Docker e Kubernetes
Workshop Microservices - Distribuindo os Microservices com Docker e KubernetesWorkshop Microservices - Distribuindo os Microservices com Docker e Kubernetes
Workshop Microservices - Distribuindo os Microservices com Docker e Kubernetes
 
Transportando as aplicações entre vários ambientes com Docker
Transportando as aplicações entre vários ambientes com DockerTransportando as aplicações entre vários ambientes com Docker
Transportando as aplicações entre vários ambientes com Docker
 

Freedomday2016 - Fique na caixinha, docker

  • 1. Vamos entrar na caxinha Eustáquio Mendes Guimarães
  • 2. Entrar na caxinha em vez de sair?
  • 3. Entrar na caxinha em vez de sair?
  • 4. O que é docker ? História Docker é um projeto open source (Apache License 2.0) para empacotar, enviar e executar diversas aplicações em containers. Containers docker são estruturas de hardware e plataforma que podem ser executadas em diversos ambientes, desde o notebook até ambientes em nuvem - não requer que se utilize uma linguagem, framework ou sistema de pacotes específico. Isto os torna uma ferramenta para deploy e escalabilidade de aplicativos web, bancos de dados e serviços de backend sem depender de um provedor em particular.
  • 5. O que é docker ? História O primeiro anúncio do Docker foi feito em 15 de Março de 2013 em um lighting talk por Solomon Hykes, CEO da dorCloud em uma coferência de Phyton, sendo liberado, como uma engine para deploy. E em abril de 2015 a empresa já vale 1 bilhão de dólares. Em outubro de 2015 já existem vários projetos: Docker Compose, Docker Swarm, Docker Hub Enterprise, Docker Machine, Docker engine, Docker Hub, Docker Registry, Kitematic.
  • 6. E antes ? História Virtualização como um todo ● Mainframes (1970 -) ● Linux (1995 -) ● VMWare (~ 1999) ● User Mode Linux (2003 -) ● Provedores de VPS ● LXC ● Xen (2004 -) ● Amazon EC2 (2006 -) ● Software-Defined Networking (2008 -) ● OpenStack (2010 -) ● Dotcloud / Docker (2012 - )
  • 7. O que são containers? Quando o kernel do sistema operacional é capaz de permitir múltiplas instâncias isoladas em user-space, ao invés de somente uma, cada instância pode ser chamada de container ou software container). Por compartilharem o mesmo kernel e parte dos recursos, containers consomem muito menos recursos do que uma máquina virtual.
  • 10. Tecnologia de virtualização do Docker Funcionamento Quando o kernel do sistema operacional é capaz de permitir múltiplas instâncias isoladas em user-space, ao invés de somente uma, cada instância pode ser chamada de container ou software container). Por compartilharem o mesmo kernel e parte dos recursos, containers consomem muito menos recursos do que uma máquina virtual.
  • 12. Por que utilizar ? ? ? * Rápida aprendizagem/utilização se comparado com outras tecnologias de containers (LXC, cgroups, etc) * Comunidade muito ativa * Repositório publico de imagens, com compartilhamento e colaboração * Integração com ferramentas de DevOps (Zabbix, Puppet, Chef, Vagrant, Ansible) * Excelente desempenho e economia de recursos (espaço em disco, processamento, memória) * Versionamento de imagens e cache
  • 13. Mas tem muita gente utilizando ? ? ?
  • 14. Mas tem muita gente utilizando ? ? ?
  • 15. * Juntamente com a cultura de DevOps, permite que você possa mais facilmente utilizar ferramentas top de linha (linguagens, bibliotecas, etc) pois o ambiente já está pronto para ser provisionado e, querendo ou não, algum nível de documentação já foi gerado * Precisa de outro sistema operacional ou distribuições além do GNU/Linux * Personalização da imagem que será construída (ex.: Debian) * Aumento da curva de aprendizagem (imagens personalizadas, logs, cron, rede) E por que devo entrar nessa caxinha ?
  • 16. * Constante evolução (ex.: rede) * Agiliza a entrega de software * Aumenta a agilidade de correção. É muito mais fácil e preciso reenviar um container completo (que já passou cliclo docker) do que enviar um patch em um arquitetura monolítica. * Para implementá-lo é necessário que as várias áreas da empresa contribuam, o que gera DevOps na prática. E por que devo entrar nessa caxinha ?
  • 17. E por que devo entrar nessa caxinha ?
  • 18. E como utilizar ? * docker create cria um container mas não o inicia * docker run cria e inicia um container em apenas uma operação * docker stop para um container * docker start inicia um container já criado * docker restart reinicia um container * docker rm deleta um container * docker kill envia um SIGKILL para o container * docker attach irá conectar a um container em execução * docker wait aguarda até que o container pare
  • 19. E como utilizar ? * docker ps exibe os containers em execução (-a para todos) * docker logs obtém logs a patir do container (saída) * docker inspect visualiza todas as informações de um container (notavelmente o endereço IP) * docker events exibe os eventos a partir do daemon em tempo real * docker port exibe mapeamento de portas (NAT) * docker top exibe os processos em execução no container * docker stats exibe estatísticas da utilização de recursos no container * docker diff exibe arquivos alterados no sistema de arquivos do container
  • 20. E vamos utilizando . . . * docker cp copia arquivos ou diretórios entre o container e o sistema de arquivos local * docker export -o arquivo.tar nome_container exporta o sistema de arquivos do container para um tarball * docker exec executa comandos em um container
  • 21. Ufa… mais ??? * docker images exibe todas as imagens * docker import importa uma imagem de um arquivo tar * docker build cria uma imagem a partir de um Dockerfile * docker commit cria uma imagem a patir de um container * docker rmi remove uma imagem * docker load carrega uma imagem a partir de um arquivo tar, incluindo camadas e tags * docker save salva uma imagem em um arquivo tar com todas as camadas, tags e versões * docker history exibe o histórico de uma imagem * docker tag renomeia a imagem (localmente ou no hub).
  • 22. Poxa, não tem nada com o mouse? :(
  • 23. Poxa, não tem nada com o mouse? :(
  • 24. Poxa, não tem nada com o mouse? :(
  • 25. Poxa, não tem nada com o mouse? :(
  • 26. E funciona legal ??? Xhost + docker run -d -p 9000:9000 --privileged -v /var/run/docker.sock:/var/run/docker.sock uifd/ui-for-docker DockerUI – localhost:9000 # CLI docker run -d php:7 php -v # interactive shell docker run -d -it php:7 # webserver docker run -d -p 8080:8080 -v $PWD:/usr/src/myapp php:7 php -S 0.0.0.0:8080 -t /usr/src/myapp docker run --name db -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 -d mysql docker run -it --net host --cpuset-cpus 0 -m 512mb -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=unix$DISPLAY -v /dev/snd:/dev/snd --privileged --name chrome jess/chrome docker run -d --name firefox -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix kennethkl/firefox
  • 27. docker run -d --name firefox -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix kennethkl/firefox docker run -it --rm -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix jarfil/gimp-git docker run --volume=/:/rootfs:ro --volume=/var/run:/var/run:rw --volume=/sys:/sys:ro --volume=/var/lib/docker/:/var/lib/docker:ro --publish=8080:8080 --detach=true --name=cadvisor google/cadvisor:latest E funciona legal ???
  • 31. Busque! E outros . . . ✔ https://www.meetup.com/pt-BR/Docker-Meetup/ - Meetup do DockerDF ✔ https://telegram.me/dockerbr - Dockerbr - Telegram ✔ https://www.facebook.com/dockerdf - Facebook - DockerDF ✔ https://www.facebook.com/groups/806364762728291 - Facebook - DockerBR ✔ http://www.mundodocker.com.br/ - Site muito legal ✔ https://youtu.be/wW9CAH9nSLs - Palestra de Solomon Hykes ✔ https://www.docker.com - Site oficial ✔ https://leanpub.com/dockerparadesenvolvedores - Livro do Gomex ✔ http://techfree.com.br/ - Site do Gomex ✔ https://training.docker.com/ - Treinamento do Docker ✔ http://devops-br.org/ - Devops Brasil ✔ https://en.wikipedia.org/wiki/Operating-system-level_virtualization ✔ http://doger.io ✔ https://en.wikipedia.org/wiki/Docker_%28software%29 ✔ http://docs.master.dockerproject.org/ ✔ http://www.forbes.com/sites/alexkonrad/2015/04/14/docker-raises-95-million-at- billion-valuation/