Base de conhecimento
1000 perguntas frequentes, 500 tutoriais e vídeos explicativos. Aqui, você encontra apenas soluções!
Instalar e configurar o systemd em um Servidor Cloud
Este guia explica como instalar e configurar o systemd em um Servidor Cloud e apresenta os principais comandos que podem ser utilizados.
Pré-requisitos
- Siga o guia de instalação do
systemdpara Servidor Cloud. - Consulte a documentação oficial para conhecer todas as funcionalidades oferecidas pelo systemd.
- Os ficheiros "unit" devem ser colocados em:
~/.config/systemd/user/ ( /home/clients/absolute-path-id/.config/systemd/user )(substituindo absolute-path-id, que pode ser encontrado no seu painel de controlo) e as permissões devem ser definidas como 0644. - O parâmetro
--userdeve ser indicado em cada comando.
Principais comandos
A seguir, uma lista não exaustiva de comandos que podem ser utilizados com o systemd.
Forçar o systemd a ler novamente os arquivos de unidade e a considerar as modificações:
systemctl --user daemon-reloadAtivação de um serviço:
systemctl --user enable --now SERVICENAME.serviceVerificação do estado de um serviço:
systemctl --user status SERVICENAME.service
Configuração do Node como um serviço com o systemd
Será necessário criar um arquivo "Unit" com a extensão ".service", que deverá ser salvo no diretório:
~/.config/systemd/user/É possível reutilizar o exemplo a seguir, substituindo os valores que começam com {} :
[Unit]
Description={Le nom du service} # Spécifier ici un nom du service. Celui-ci est obligatoire mais n'a pas d'impact sur le fonctionnement
[Service]
Restart=always
Environment=NODE_VERSION={la version souhaitée} # Spécifier ici la version de Node à utiliser. S'assurer qu'elle soit installée au préalable avec "nvm install {la version souhaitée}"
WorkingDirectory=%h/{repertoire du projet Node} # %h correspond à la racine de l'hébergement
ExecStart=/bin/bash -c "exec $HOME/.nvm/nvm-exec {commande de lancement du script node}" # Cette commande dépend du projet. Par exemple, "npm run start", "npm run serve" ou encore "node server.js" sont courants
[Install]
WantedBy=default.target
Ações adicionais com um ficheiro Unit
systemctl --user daemon-reloadIniciar o serviço (se este já estiver ativo, nada acontece):
systemctl --user start [Nom du Unit]Parar o serviço (se o serviço não estiver ativo, nada acontece):
systemctl --user stop [Nom du Unit]Reiniciar o serviço (se não estiver em execução, ele será iniciado):
systemctl --user restart [Nom du Unit]Obter informações sobre o serviço, incluindo:
- "Ativo", que indica se o serviço está em funcionamento e desde quando.
- "CGroup" mostra o grupo de processos gerenciado pelo serviço, permitindo visualizar os processos ativos, com seus argumentos e ID.
Abaixo de "CGroup" encontram-se os logs (a saída padrão e de erro do processo):
systemctl --user status [Nom du Unit]Ativar o início automático do serviço durante a inicialização do servidor; Observação: isso não inicia o serviço:
systemctl --user enable [Nom du Unit]Desativar o início automático do serviço durante a inicialização do servidor; Observação: isso não interrompe o serviço:
systemctl --user disable [Nom du Unit]
Configuração com as entradas do usuário:
[Unit]
Description="nom service"
[Service]
Restart=always
Environment=NODE_VERSION=16.17
WorkingDirectory=%h/sites/"nom-repertoire-site"/
ExecStart=/bin/bash -c "exec $HOME/.nvm/nvm-exec npm run start"
[Install]
WantedBy=default.targetLink para esta FAQ: https://faq.infomaniak.com/2571
Esta seção de perguntas frequentes foi útil?