Fazendo com que um Container Docker Seja executado como serviço (OpenSign).

Olá pessoal, explico neste posto em como fazer com que os containers do OpenSign (ou qualquer outro stack Docker Compose) iniciem automaticamente como serviço do sistema, de forma que subam sozinhos no boot (ex: após reboot do servidor).

Abaixo segue o passo a passo completo e validado para Ubuntu Server 22.04+:


1. Criar um arquivo systemd para o Docker Compose

Crie o arquivo de unidade:

sudo nano /etc/systemd/system/opensign.service

Cole o conteúdo abaixo:

[Unit]
Description=OpenSign Docker Compose Service
Requires=docker.service
After=docker.service network.target

[Service]
Type=oneshot
RemainAfterExit=yes
WorkingDirectory=/opt/opensign
ExecStart=/usr/bin/docker compose up -d
ExecStop=/usr/bin/docker compose down
TimeoutStartSec=0

[Install]
WantedBy=multi-user.target

🔹 Ajuste o caminho de WorkingDirectory para o local onde está o seu docker-compose.yml (por exemplo /root/OpenSign ou /srv/opensign).


2. Ativar e iniciar o serviço

Execute:

sudo systemctl daemon-reload
sudo systemctl enable opensign.service
sudo systemctl start opensign.service

3. Testar o comportamento

Verifique o status:

sudo systemctl status opensign.service

Simule um reboot:

sudo reboot

Após o boot, confirme se os containers subiram:

docker ps

Eles devem aparecer em execução (Up ...).

4. Logs e manutenção

  • Ver logs do serviço: journalctl -u opensign.service -f
  • Parar o serviço manualmente: sudo systemctl stop opensign.service
  • Reiniciar manualmente: sudo systemctl restart opensign.service

Deixe um comentário

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