SlideShare a Scribd company logo
1 of 51
Download to read offline
PRIMEIROS
PASSOS
COM
DOCKER
ESTAMOS CONTRATANDO
INTRODUÇÃO
DOCKER É UMA FERRAMENTA OPEN SOURCE
ESCRITA EM GO PARA GERENCIAR CONTAINERS.
INSTALAÇÃO
FUNCIONA APENAS
EM AMBIENTES *UNIX
É NECESSÁRIO TER UMA VERSÃO DO KERNEL ACIMA DA 3.8
$ uname -r
3.11.0-15-generic
INSTALAÇÃO EM DEBIAN/UBUNTU
$ curl -sSL https://get.docker.com/ | sh
OUTRAS FORMAS DE INSTALAR
https://docs.docker.com/engine/installation/
PARA WINDOWS E MAC AINDA NÃO EXISTE UMA
SOLUÇÃO NATIVA... MAS EXISTEM ALTERNATIVAS
https://www.docker.com/docker-toolbox
HELLO WORLD!
$ docker run hello-world
Dockerfile
UM ARQUIVO DE MANIFESTO QUE CONTEM AS
INSTRUÇÕES ( ROTINAS EM SHELL SCRIPT ) PARA A
CRIAÇÃO DE UMA IMAGEM DOCKER
AMBIENTE NODEJS
$ docker build -t devparana/nodejs .
FAZENDO O BUILD DA IMAGEM
$ docker run -it -d 
--name nodejs 
--publish 3000:3000 
--volume "$PWD":/my-app 
--workdir /my-app 
devparana/nodejs 
node app.js
CRIANDO UM CONTAINER COM A NOSSA IMAGEM
$ docker run -it -d 
--name nodejs 
--publish 3000:3000 
--volume "$PWD":/my-app 
--workdir /my-app 
devparana/nodejs 
node app.js
CRIANDO UM CONTAINER COM A NOSSA IMAGEM
$ docker run -it -d 
--name nodejs 
--publish 3000:3000 
--volume "$PWD":/my-app 
--workdir /my-app 
devparana/nodejs 
node app.js
CRIANDO UM CONTAINER COM A NOSSA IMAGEM
$ docker run -it -d 
--name nodejs 
--publish 3000:3000 
--volume "$PWD":/my-app 
--workdir /my-app 
devparana/nodejs 
node app.js
CRIANDO UM CONTAINER COM A NOSSA IMAGEM
$ docker run -it -d 
--name nodejs 
--publish 3000:3000 
--volume "$PWD":/my-app 
--workdir /my-app 
devparana/nodejs 
node app.js
CRIANDO UM CONTAINER COM A NOSSA IMAGEM
$ docker run -it -d 
--name nodejs 
--publish 3000:3000 
--volume "$PWD":/my-app 
--workdir /my-app 
devparana/nodejs 
node app.js
CRIANDO UM CONTAINER COM A NOSSA IMAGEM
$ docker run -it -d 
--name nodejs 
--publish 3000:3000 
--volume "$PWD":/my-app 
--workdir /my-app 
devparana/nodejs 
node app.js
CRIANDO UM CONTAINER COM A NOSSA IMAGEM
$ curl -I localhost:3000
HTTP/1.1 200 OK
X-Powered-By: Express
SEU CONTAINER ESTÁ PRONTO E EM EXECUÇÃO
AMBIENTE DEV
NA MAIORIA DAS VEZES, TEMOS VÁRIOS COMPONENTES
DE TECNOLOGIAS DIFERENTES ..
DOCKER
COMPOSE
O DOCKER COMPOSE É UMA FERRAMENTA QUE PERMITE
CRIAR E EXECUTAR APLICAÇÕES QUE DEPENDAM DE
VÁRIOS SERVIÇOS DIFERENTES, RODANDO OS MESMOS
EM CONTAINERS SEPARADO
docker-compose.yml
http://azk.io
É UMA FERRAMENTA DE ORQUESTRAÇÃO DE
AMBIENTES DE DESENVOLVIMENTO, QUE ATRAVÉS DE
UM ARQUIVO MANIFESTO (O AZKFILE.JS), AJUDA AO
DESENVOLVEDOR A RAPIDAMENTE: INSTALAR E
CONFIGURAR UM AMBIENTE DE DESENVOLVIMENTO
Azkfile.js
Primeiros passos-com-docker
Primeiros passos-com-docker
Primeiros passos-com-docker
Primeiros passos-com-docker
Primeiros passos-com-docker
Primeiros passos-com-docker
Primeiros passos-com-docker
Primeiros passos-com-docker

More Related Content

What's hot

Clase 7 el modelo
Clase 7  el modeloClase 7  el modelo
Clase 7 el modelohydras_cs
 
Progressive Mobile Web Apps
Progressive Mobile Web AppsProgressive Mobile Web Apps
Progressive Mobile Web Appsdynamis
 
Introducing Ballerina
Introducing BallerinaIntroducing Ballerina
Introducing BallerinaWSO2
 
Monorepo with Lerna - 한승호@에멘탈
Monorepo with Lerna - 한승호@에멘탈Monorepo with Lerna - 한승호@에멘탈
Monorepo with Lerna - 한승호@에멘탈Seungho Han
 

What's hot (6)

Clase 7 el modelo
Clase 7  el modeloClase 7  el modelo
Clase 7 el modelo
 
Dart und JavaScript
Dart und JavaScriptDart und JavaScript
Dart und JavaScript
 
Progressive Mobile Web Apps
Progressive Mobile Web AppsProgressive Mobile Web Apps
Progressive Mobile Web Apps
 
Introducing Ballerina
Introducing BallerinaIntroducing Ballerina
Introducing Ballerina
 
Monorepo with Lerna - 한승호@에멘탈
Monorepo with Lerna - 한승호@에멘탈Monorepo with Lerna - 한승호@에멘탈
Monorepo with Lerna - 한승호@에멘탈
 
jQuery PLUGIN
jQuery PLUGINjQuery PLUGIN
jQuery PLUGIN
 

Primeiros passos-com-docker

  • 2.
  • 3.
  • 4.
  • 5.
  • 7.
  • 9. DOCKER É UMA FERRAMENTA OPEN SOURCE ESCRITA EM GO PARA GERENCIAR CONTAINERS.
  • 10.
  • 13. É NECESSÁRIO TER UMA VERSÃO DO KERNEL ACIMA DA 3.8 $ uname -r 3.11.0-15-generic
  • 14. INSTALAÇÃO EM DEBIAN/UBUNTU $ curl -sSL https://get.docker.com/ | sh
  • 15. OUTRAS FORMAS DE INSTALAR https://docs.docker.com/engine/installation/
  • 16. PARA WINDOWS E MAC AINDA NÃO EXISTE UMA SOLUÇÃO NATIVA... MAS EXISTEM ALTERNATIVAS
  • 18. HELLO WORLD! $ docker run hello-world
  • 20. UM ARQUIVO DE MANIFESTO QUE CONTEM AS INSTRUÇÕES ( ROTINAS EM SHELL SCRIPT ) PARA A CRIAÇÃO DE UMA IMAGEM DOCKER
  • 21.
  • 23.
  • 24. $ docker build -t devparana/nodejs . FAZENDO O BUILD DA IMAGEM
  • 25. $ docker run -it -d --name nodejs --publish 3000:3000 --volume "$PWD":/my-app --workdir /my-app devparana/nodejs node app.js CRIANDO UM CONTAINER COM A NOSSA IMAGEM
  • 26. $ docker run -it -d --name nodejs --publish 3000:3000 --volume "$PWD":/my-app --workdir /my-app devparana/nodejs node app.js CRIANDO UM CONTAINER COM A NOSSA IMAGEM
  • 27. $ docker run -it -d --name nodejs --publish 3000:3000 --volume "$PWD":/my-app --workdir /my-app devparana/nodejs node app.js CRIANDO UM CONTAINER COM A NOSSA IMAGEM
  • 28. $ docker run -it -d --name nodejs --publish 3000:3000 --volume "$PWD":/my-app --workdir /my-app devparana/nodejs node app.js CRIANDO UM CONTAINER COM A NOSSA IMAGEM
  • 29. $ docker run -it -d --name nodejs --publish 3000:3000 --volume "$PWD":/my-app --workdir /my-app devparana/nodejs node app.js CRIANDO UM CONTAINER COM A NOSSA IMAGEM
  • 30. $ docker run -it -d --name nodejs --publish 3000:3000 --volume "$PWD":/my-app --workdir /my-app devparana/nodejs node app.js CRIANDO UM CONTAINER COM A NOSSA IMAGEM
  • 31. $ docker run -it -d --name nodejs --publish 3000:3000 --volume "$PWD":/my-app --workdir /my-app devparana/nodejs node app.js CRIANDO UM CONTAINER COM A NOSSA IMAGEM
  • 32. $ curl -I localhost:3000 HTTP/1.1 200 OK X-Powered-By: Express SEU CONTAINER ESTÁ PRONTO E EM EXECUÇÃO
  • 34. NA MAIORIA DAS VEZES, TEMOS VÁRIOS COMPONENTES DE TECNOLOGIAS DIFERENTES ..
  • 36. O DOCKER COMPOSE É UMA FERRAMENTA QUE PERMITE CRIAR E EXECUTAR APLICAÇÕES QUE DEPENDAM DE VÁRIOS SERVIÇOS DIFERENTES, RODANDO OS MESMOS EM CONTAINERS SEPARADO
  • 38.
  • 39.
  • 41. É UMA FERRAMENTA DE ORQUESTRAÇÃO DE AMBIENTES DE DESENVOLVIMENTO, QUE ATRAVÉS DE UM ARQUIVO MANIFESTO (O AZKFILE.JS), AJUDA AO DESENVOLVEDOR A RAPIDAMENTE: INSTALAR E CONFIGURAR UM AMBIENTE DE DESENVOLVIMENTO
  • 42.