Docker – roubando a cena

docker-logo-loggedout
Docker ultimamente é o nome da vez. Provavelmente o nome de 2015.

Não vou me aprofundar em explicar o que ele é então basicamente o Docker é um daemon no Linux que permite aplicações dentro de um container (entenda Sandy Box) protegido dos demais containers e obviamente do sistema hospedeiro.

No Arch Linux para instalar ele use o pacman

pacman -S docker

e logo sem seguida habilite o daemon

sudo systemctl enable docker

e inicie-o

sudo systemctl start docker

Descobrindo o que é por exemplos:

Imagine que você queira rodar uma imagem Ubuntu no console do Arch Linux você apelaria para o VirtualBox. O docker evita todo este overhead e facilita a instalação veja como é fácil:

[fabio@15:31 ~]$ docker run -t -i ubuntu:12.04 /bin/bash


Unable to find image 'ubuntu:12.04' locally
ubuntu:12.04: The image you are pulling has been verified

511136ea3c5a: Pull complete 
3e620b0cd0e1: Pull complete 
9cd5c1770233: Pull complete 
aa1f17efe798: Pull complete 
3e09053df658: Pull complete 
Status: Downloaded newer image for ubuntu:12.04

Neste comando pedimos ao docker recém instalado rodar uma imagem ubuntu no repositório de nome ‘ubuntu:12.04’.

Como é uma primeira instalação você provavelmente não terá a imagem em seu computador. Então ele irá automaticamente baixar o arquivo necessário e logo irá rodar o /bin/bash como passado na linha de comando.

Então a linha de comando do novo linux rodando (dentro do linux hospedeiro) será visto dessa forma:

root@a2babec10ee4:/# ls
bin boot dev etc home lib lib64 media mnt opt proc root run sbin selinux srv sys tmp usr var
root@a2babec10ee4:/# ps
 PID TTY TIME CMD
 1 ? 00:00:00 bash
 11 ? 00:00:00 ps
root@a2babec10ee4:/# clear

Neste caso o root@a2babec10ee4 é nossa linha de comando e o a2babec10ee4 é o identificador do container. É um linux rodando! Não há segredo. Use, então, o Apt-get para instalar programas úteis como servidores, compiladores.

Para sair deste console use CTRL+P+Q. Ao sair o container é colocado em modo Stop.

Para voltar primeiro descubra novamente suas imagens (provavelmente você não anotou este código):

[fabio@17:11 ~]$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
a2babec10ee4 ubuntu:12.04 "/bin/bash" About an hour ago Up About an hour loving_darwin

Para voltar a rodar este container use:

 docker attach a2babec10ee4

Se você acha que eles devem usar alguma forma melhor de nomear estes containers estou com você.

Isso tudo parece o Screen não é mesmo? Mas é diferente. No screen você roda uma aplicação em outro console mas no mesmo sistema operacional com todos os privilégios e acessos do usuário. No Docker uma caixa protegida contém tudo que precisamos sem acesso externo mas somente dos recursos de hardware da máquina e aqui esta a sacada: das bibliotecas e binários do sistema operacional mas de forma protegida.

Anúncios

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s