Para este tutorial, vamos precisar de: o Docker instalado na sua máquina, e um terminal de sua preferência (neste caso, utilizaremos o VS Code com terminal integrado).
Instalação:
sudo apt install docker # Ubuntu
sudo dnf install docker # Fedora
Verifique o status do serviço do docker:
sudo systemctl status docker
O output deve ser algo como:
Output● docker.service - Docker Application Container Engine
Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2020-05-19 17:00:41 UTC; 17s ago
TriggeredBy: ● docker.socket
Docs: https://docs.docker.com
Main PID: 24321 (dockerd)
Tasks: 8
Memory: 46.4M
CGroup: /system.slice/docker.service
└─24321 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
Docker é uma ferramenta de contêineres que nos permite empacotar nossas aplicações e seus ambientes em contêineres, garantindo que a aplicação funcionará da mesma forma em qualquer máquina. Com Docker, conseguimos uma forma eficiente de executar, testar e distribuir software de maneira isolada e controlada.
Assim que você instalar o Docker, abra o terminal e verifique se ele está funcionando corretamente com o comando:
docker --version
Se você receber a versão instalada como resposta, parabéns! O Docker está funcionando. Caso contrário, verifique se a instalação foi feita corretamente e se você já reiniciou sua máquina, pois pode ser necessário.
Docker version 27.2.0, build 3ab4256
Para começar nosso primeiro contêiner Docker, vamos baixar uma imagem oficial da Docker Hub, que é o repositório de imagens do Docker.
No terminal, digite o seguinte comando para puxar a imagem do Ubuntu:
docker pull ubuntu
Isso irá baixar a imagem do Ubuntu mais recente. Agora, vamos rodar essa imagem e criar um contêiner interativo com ela:
docker run -it ubuntu
O comando docker run
cria e roda o contêiner, e as flags -it
permitem que você interaja com o contêiner no modo terminal.
Dentro do contêiner, você estará no ambiente Ubuntu, como se estivesse usando um sistema operacional novo e limpo!
Agora que estamos dentro do nosso contêiner, podemos executar comandos como se estivéssemos em qualquer terminal Linux. Por exemplo, tente atualizar o sistema:
apt-get update
E se quiser sair do contêiner, basta digitar exit
no terminal.
Podemos listar todos os contêineres que estão rodando ou que já rodaram em nossa máquina com o comando:
docker ps -a
Este comando mostra todos os contêineres, incluindo os que já foram finalizados. Para listar todas as imagens que baixamos, podemos usar:
docker images
Esses comandos são úteis para gerenciar nossos contêineres e imagens.
Agora, vamos criar nossa própria imagem Docker. Para isso, vamos criar um Dockerfile, que é um arquivo de configuração usado para construir uma imagem.
Crie um arquivo chamado Dockerfile
e adicione o seguinte conteúdo:
# Usando uma imagem base do Ubuntu
FROM ubuntu:latest
# Instalação de dependências
RUN apt-get update && apt-get install -y curl
# Definindo o comando que será executado quando o contêiner iniciar
CMD ["echo", "Hello, Docker!"]
Agora, vamos construir nossa imagem com o seguinte comando:
docker build -t meu-primeiro-container .
Aqui, estamos dizendo ao Docker para construir uma imagem usando o Dockerfile
presente no diretório atual (.
) e nomeando a imagem como "meu-primeiro-container".
Depois de construirmos nossa imagem, podemos rodá-la com o comando:
docker run meu-primeiro-container
Se tudo correu bem, você verá a mensagem "Hello, Docker!" no terminal. Parabéns, você acabou de criar e rodar sua primeira imagem Docker!
Para compartilhar sua imagem com outras pessoas, você pode fazer o upload dela para o Docker Hub. Primeiro, faça login no Docker Hub:
docker login
Após logar, basta dar um tag
na sua imagem e enviá-la para o repositório Docker Hub:
docker tag meu-primeiro-container seu-usuario/meu-primeiro-container
E em seguida, enviar com:
docker push seu-usuario/meu-primeiro-container
Agora, qualquer pessoa pode baixar sua imagem com o comando docker pull
.
Neste tutorial, aprendemos como instalar o Docker, rodar contêineres, criar nossas próprias imagens e compartilhar no Docker Hub. Docker é uma ferramenta poderosa que facilita muito o desenvolvimento e a distribuição de software.