DevopsLinux

Como instalar Docker e docker-compose no Linux Ubuntu, Mint e Debian

Docker é uma plataforma de código aberto para desenvolvimento, implantação e execução de aplicativos. Para usá-lo em sistemas operacionais, é necessário instalá-lo. Neste texto, veremos como instalar e configurar no Debian Linux: distribuições baseadas em Mint e Ubuntu.

Com o Docker, você pode separar aplicativos da sua infraestrutura, permitindo implantar rapidamente seus softwares em servidores. Ele possibilita gerenciar a infraestrutura da mesma forma que gerencia seus aplicativos. Ao usar as metodologias do Docker para criar, testar e implantar código rapidamente, é possível reduzir significativamente o tempo entre escrever o código e executá-lo em produção.

Instalando Docker no Linux Mint e Ubuntu

Eu explico como instalar o Docker no Linux Mint usando os repositórios oficiais, que é semelhante à instalação em Ubuntu ou sistemas derivados do Debian.

1- Instale os pacotes que permitirão a utilização do repositório por HTTPS:

 sudo apt-get update

 sudo apt-get install \
    ca-certificates \
    curl \
    gnupg \
    lsb-release

2- Adicione chaves GPG oficiais do Docker

sudo mkdir -p /etc/apt/keyrings

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

3- Configure o repositório, você pode usar o seguinte comando

echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

É necessário corrigir o nome da versão do Linux Mint para refletir a versão do Ubuntu no arquivo de origem. Isso é importante porque o Mint é baseado no Ubuntu e o Docker não oferece fonte APT para o Mint. Se você executar um apt update antes da correção, verá o seguinte erro:

The repository 'https://download.docker.com/linux/ubuntu una Release' does not have a Release file.

Digite o seguinte comando para verificar a versão:


sudo cat /etc/upstream-release/lsb-release 
[sudo] password for edcarlos:

DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=22.04
DISTRIB_CODENAME=jammy
DISTRIB_DESCRIPTION="Ubuntu Jammy Jellyfish"

No exemplo anterior, o resultado da versão do meu Linux Mint para o Ubuntu é “jammy”. Agora é preciso alterar esse nome no arquivo de origem do Docker Apt:

sudo nano /etc/apt/sources.list.d/docker.list 

Altere una para jammy na seguinte linha do arquivo:

deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu jammy stable

Agora é só instalar o docker-engine e o docker-compose:

sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin docker-compose

Vamos testar a instalação:

sudo docker run hello-world

Agora estamos prontos para instalar os pacotes das nossas linguagens, bancos de dados e outras ferramentas em contêineres Docker sem precisar “poluir” a instalação do sistema operacional. Além disso, temos a vantagem de iniciar e parar serviços quando necessário e usar diferentes versões de linguagens de interface ou de programação para cada projeto.

Adicionando a conta de usuário comum ao grupo docker

Um problema comum ao executar o docker-compose, mesmo ao usar o Docker pela primeira vez, é a falta de permissão no arquivo docker.sock:

Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.40/containers/json: dial unix /var/run/docker.sock: connect: permission denied

Agora você precisa adicionar o usuário que está usando ao grupo que possui permissão para gravar nos arquivos privilegiados do Docker.

sudo usermod -aG docker $USER

Faça log out e log in novamente para a mudança de grupo fazer efeito e rode o comando novamente,tudo deve funcionar :).

One thought on “Como instalar Docker e docker-compose no Linux Ubuntu, Mint e Debian

  • Logged into 777adlogin today. No frills, just gets the job done. If you’re looking for something simple, give it a shot. Find it here 777adlogin

    Resposta

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

YouTube
YouTube
Facebook
Facebook