Leitores como você ajudam a apoiar o MUO. Quando você faz uma compra usando links em nosso site, podemos ganhar uma comissão de afiliado. Consulte Mais informação.

O Docker é uma ferramenta essencial para facilitar a instalação dos aplicativos que podem executar seus sites e serviços, e é ainda mais fácil de gerenciar com o docker-compose.

Alguns projetos não vêm com arquivos docker-compose e é demorado criar um você mesmo. O docker-autocompose pode gerar um arquivo docker-compose funcional a partir de qualquer contêiner do Docker em execução.

Alguns aplicativos do Docker não possuem arquivos de composição

Docker é uma plataforma de código aberto para implantação de aplicativos em componentes agrupados conhecidos como contêineres. Ao usar o Docker, você não precisa se preocupar com dependências ou interações entre serviços, pois geralmente são pré-configurados até certo ponto.

Você pode usar o Docker para implantar aplicativos, incluindo servidores especializados, distribuições Linux ou imagens personalizadas. A execução de aplicativos com o Docker é relativamente fácil e pode garantir que você sempre tenha a versão mais recente do software.

Se você não estiver familiarizado com o conceito de aplicativos dockerizados, leia nosso guia essencial para por que você deve usar o Docker em vez de uma máquina virtual.

Os comandos do Docker são longos e geralmente executados como um único comando com todas as variáveis ​​relevantes. Eles são difíceis de inserir e, embora você possa adicionar um alias ao seu arquivo .bashrc, muitas vezes se resume a pressionar repetidamente Ctrl + R para encontrar o comando Docker exato que você deseja.

O Docker Compose é uma ferramenta para ajudá-lo na interação e orquestração entre contêineres. É tão eficaz em ajudar você a gerenciar contêineres do Docker que muitos usuários nem aprendem a usar o Docker. Por que você faria isso, quando tudo o que precisa fazer é baixar um único arquivo YAML e criá-lo com um simples comando de duas palavras?

Embora muitos aplicativos que podem ser implantados pelo Docker tenham arquivos Compose, nem todos têm, dificultando instalações e implantações rápidas e limpas do Docker. Isso é especialmente comum com aplicativos para hardware menos convencional, como ARM64 e ARMhf.

Se você preferir usar o docker-compose em vez do Docker bruto, pode optar por não usar um determinado software se não houver um docker-compose.yml útil no repositório GitHub do projeto.

docker-autocompose Facilita a geração automática de um arquivo de composição

docker-autocompose é um aplicativo Python que pode criar um arquivo Compose funcional a partir de qualquer contêiner do Docker em execução.

Isso significa que você só precisa executar o comando docker primeiro, depois pegar a saída gerada e iniciar o aplicativo usando docker-compose no futuro, ou você pode anexá-lo a um arquivo Compose existente para gerenciar todos os seus serviços em uma vez.

Como instalar o docker-autocompose no Linux

Como o docker-autocompose vem como um aplicativo Python, você precisa ter o Python PIP instalado em seu sistema Linux.

Para instalar o Python PIP no Debian ou Ubuntu:

sudo apt instalar python3-pip

Instale o PIP no Arch Linux e seus derivados usando:

sudo pacman -S python-pip

Para instalar o PIP no CentOS e Red Hat Enterprise Linux, execute:

sudo yum instalar python3 python3-roda

Não é preciso dizer que você também precisa ter o Docker e o Docker Compose instalados.

Clone o repositório GitHub para docker-autocompose e mova para o novo diretório:

git clone https://github.com/Red5d/docker-autocompose.git
cd docker-autocompose

Agora instale o docker-autocompose executando:

sudopython3configurar.pyinstalar

docker-autocompose agora está instalado.

Use docker-autocompose para gerar arquivos de composição

Muitas vezes, ao procurar aplicativos Linux essenciais, você se deparará com um projeto incrível que vem com imagens do Docker, mas sem um arquivo Compose. Um exemplo disso é o excelente cliente de IRC acessível por navegador, Despacho.

Crie um diretório para o Dispatch usar:

mkdir ~/despacho

Baixe e inicie o cliente na porta 8080 da sua máquina local com:

docker run -p 8080:80 -v /home/david/dispatch:/data --restart no -d khlieng/Despacho

Visite localhost: 8080 em seu navegador para verificar se o Dispatch está funcionando e, em seguida, diga ao docker-autocompose para gerar o conteúdo do arquivo Compose do contêiner em execução com:

sudo autocompose.py <container-name-or-id>

Nesse caso, o nome do contêiner é dispatch e o ID do contêiner aparecerá como saída em seu terminal imediatamente após a execução do comando docker.

Como alternativa, você pode criar o conteúdo do arquivo Compose que pode ser usado para iniciar todos os contêineres do Docker em execução com:

sudo autocompose.py $(docker ps -aq)

Nenhum arquivo do Docker Compose será gerado, portanto, você precisa copiar o stdout para a área de transferência e criar um novo arquivo com:

nanodocker-compose.yml

Cole o conteúdo da área de transferência, salve e saia do nano com Ctrl + O, então Ctrl + X.

Agora você pode iniciar todos os seus contêineres de uma só vez com:

docker-compose up -d

Como alternativa, você pode executar o docker-autocompose usando o próprio Docker executando:

docker run --rm -v /var/run/docker.sock:/var/run/docker.sock ghcr.io/red5d/docker-autocompose <nomes-ou-ids adicionais>

...que é um comando que lembra por que você precisa do docker-autocompose para começar.

Crie instantaneamente arquivos de composição de trabalho a partir de contêineres do Docker em execução

O Docker e o Docker Compose são uma parte cada vez mais importante do ecossistema de aplicativos Linux e estão provando especialmente valioso para sites e serviços de auto-hospedagem na onipresente placa única Raspberry Pi computador.

Se você ainda não iniciou sua jornada para criar seu próprio ecossistema online, dê uma olhada em alguns dos incríveis projetos voltados para a Web que você pode executar no Pi.