Run Docker Container como um serviço no Ubuntu

Run Docker Container como um serviço no Ubuntu
Ao discutirmos a implantação do contêiner do Docker como um serviço no Ubuntu, você pode iniciar automaticamente, parar, verificar o status e gerenciar um contêiner como um serviço Systemd colocando um arquivo de unidade acionado por sistema em sua máquina host. Os motivos para executar o Systemd dentro de uma máquina são:

Muitos usuários desejam remover aplicativos atuais de vários serviços das VMs e colocá-los em contêineres para muitos serviços. Eles querem que esses aplicativos sejam divididos em microsserviços; No entanto, algumas pessoas não podem ou não têm tempo. Faz sentido operá -los como serviços executados a partir de arquivos da unidade Systemd.

Arquivos da unidade do sistema: A maioria dos programas em execução nos contêineres é feita de VM ou código de host. Esses aplicativos têm um arquivo de unidade preparado para o aplicativo e compreende a execução do programa. É melhor do que invadir seus próprios serviços iniciantes para lançar o serviço usando a maneira suportada.

O que é Docker?

Docker pretende ajudar engenheiros e equipes a se tornarem mais produtivos e menos suscetíveis a erros. O estabelecimento e a implementação de novos projetos com o Docker são mais fáceis e mais eficientes no tempo.

Considere um cenário no qual seu sistema operacional Windows está instalado e seu aplicativo deve ser implantado e testado em um sistema operacional separado - Fedora, CentOS e Ubuntu. O que você vai fazer? Você quer colocar tudo isso no seu laptop? É extremamente direto?

Considere um caso em que você deve usar várias versões python do aplicativo, digamos Python 3.2, Python 3.8, etc., e várias combinações de servidor da web, como Nginx e Apache. O que você vai fazer? É onde Docker vai salvar você.

O Docker é uma plataforma de contêinerização que permite agrupar seu programa e é um contêiner do Docker que garante que ele funcione sem problemas em cada ambiente.

Então, digamos que você use o Ubuntu 20.02 e Python 3.2 Para implantar/construir seu aplicativo. Você pode construir uma imagem do docker para executar o código em um contêiner do docker contendo um arquivo de várias camadas.
Uma imagem do docker está disponível para a execução correta do seu projeto, com bibliotecas de sistemas, ferramentas, arquivos e quaisquer outras dependências.

Run Docker Container como serviço

Digamos que o nome do seu aplicativo seja 'x.'Para executar o contêiner do aplicativo como um serviço usando Systemd, Crie o seguinte arquivo de serviço em/etc/Systemd/System Directory com nomes como
'Docker.Alguns_name.serviço' :

[Unidade]
Descrição = X contêiner
Depois = Docker.serviço
Quer = rede-online.Docker alvo.soquete
Requer = docker.soquete
[Serviço]
Reinicie = sempre
ExecStart =/usr/bin/docker start -a algum_name
Execstop =/usr/bin/docker parada -t 10 algum_name
[Instalar]
WantedBy = MultiUser.alvo

A unidade de arquivo gera um novo serviço e mapeia o início e a parada de instruções para as sequências de início e parada do serviço.

Para ativar o serviço com inicialização do sistema, use:

SystemCtl Ativar Docker.Alguns_name

Use os seguintes comandos para parar e iniciar o serviço manualmente a qualquer momento:

Docker de serviço sudo.Alguns_name Stop
Docker de serviço sudo.Algum_nome Start

Conclusão

Mostramos uma abordagem para implantar recipientes do Docker como Systemd Serviços no Ubuntu neste artigo. É uma alternativa simples a outras ferramentas para orquestração de contêineres. Podemos usar o Docker em várias tarefas relacionadas ao desenvolvimento e teste de nosso aplicativo. Aumenta a fase de teste de nossa aplicação. Podemos usá -lo para gerenciar versões para todo o sistema operacional do seu aplicativo. Outro uso do Docker é colaborar com uma equipe para o sistema operacional do seu aplicativo. Você também pode executar o código do seu laptop no mesmo ambiente que seu servidor usando o Docker.