Upload
websix
View
423
Download
2
Embed Size (px)
Citation preview
Docker
● An open platform for distributed applications for developers and sysadmins
● Docker Containers as a Service (CaaS)
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.
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
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!