Manual

do

Maker

.

com

Como criar uma imagem docker

Como criar uma imagem docker

Como criar uma imagem docker e pra que?

Estou em andamento com um artigo no qual preciso de um Ubuntu Xenial para dar continuidade, então decidi previamente escrever esse artigo explicando como fazer o processo, caso você deseje executar os próximos 2 artigos relacionados. Os requisitos mínimos para isso é que você esteja usando um Linux nativamente e que esse Linux seja baseado em Debian (Ubuntu, Mint, Xubuntu etc). Vou mostrar rapidamente como criar uma imagem docker e conectar-se a um container criado a partir dela e volto ao artigo que estava escrevendo, relacionado a embarcados e garanto que vai ser muito interessante.

debootstrap

Para criarmos uma imagem base, precisaremos dessa ferramenta. Ela instala cria tanto imagens de Debian quanto de Ubuntu, então fica fácil gerar uma imagem base para o docker. Se não a tem instalada ainda, proceda com o comando a seguir.

sudo su
apt-get install debootstrap

Depois disso, criamos um chroot básico:

debootstrap --arch=amd64 xenial xenial http://archive.ubuntu.com/ubuntu/
sudo tar -C xenial -c . | docker import - xenial

E fazemos o primeiro teste:

docker run xenial cat /etc/lsb-release

Deve retornar algo como:

lsb-release_debootstrap.webp

Agora vamos mexer um pouquinho nas coisas. Use o comando docker ps -a e veja o hash relacionado ao comando dado.

docker_ps-a.webp

Encontrando-a, remova a referência:

docker rm 215236196a7e

docker save

Agora vamos gerar uma imagem de backup.

docker save xenial > xenial.tar
docker save --output xenial.tar xenial
docker save -o xenial.tar xenial
docker save -o xinial.tar xenial:latest

docker load

Agora, antes de carregá-la, remova a imagem criada previamente.

docker rmi xenial
docker load <xenial.tar
docker load --input xenial.tar
docker images

Deve retornar algo como:

docker_save_and_load.webp

Agora devemos criar, iniciar e conectar ao container:

docker run  -it --name armbian -p 8180:80 -p 8122:22  \
-p 10000:10000 -v ~/.ssh:/root/.ssh \
-v ~/my_workspace/armbian:/root/workspace:rw xenial:latest /bin/bash

Se tudo der certo e nada der errado, você já estará dentro do docker. Só para deixar claro, o docker faz paralelização de processos, ele não é uma virtualização. Também, a partir do momento que você executar esse comando anterior, estará na raiz do sistema criado com docker run. Você perceberá que o prompt ficará diferente:

attached_to_container.webp

Agora você já pode instalar seus programas, fazer update do repositório de pacotes e tudo o mais. Se não está familiarizado com o docker e não conhece os comandos, sugiro que leia esse artigo. Se tiver interesse de usar visão computacional e tem uma boa placa NVidia, pode querer configurar o cuda no docker. Nesse caso, recomendo esse outro artigo.

Agora já posso finalizar o outro artigo!

  Inscreva-se no nosso canal Manual do Maker no YouTube.

Também estamos no Instagram.  

Nome do Autor

Djames Suhanko

Autor do blog "Do bit Ao Byte / Manual do Maker".

Viciado em embarcados desde 2006.
LinuxUser 158.760, desde 1997.