Você pode enviar comandos do console para um serviço systemd baseado em nó?

1

Eu tenho um script node.js simples que aceita comandos do console usando readline. Eu configurei para rodar como um serviço systemd (no Debian 9):

[Unit]
Description=Web Game Server

[Service]
ExecStart=/usr/bin/node /var/www/index.js
Restart=always
Environment=NODE_ENV=production

[Install]
WantedBy=multi-user.target

Ao executar diretamente do console com node index.js , posso enviar comandos para ele através do console. Existe alguma maneira de fazer isso enquanto ele está sendo executado como um serviço?

    
por user2145184 21.10.2018 / 02:29

1 resposta

2

Como agora está sendo executado como um serviço systemd, não acho que você possa conectá-lo diretamente a um console. Você precisa de alguma forma de comunicação entre processos, como:

  • Servidor de soquete TCP
  • Soquete do UNIX
  • FIFO (pipe nomeado)

O utilitário 'socat' pode ser útil para ser executado no console. Ele pode se conectar ao serviço usando um dos protocolos acima e fornecer recursos normais de linha de leitura ao usuário.

    
por 23.10.2018 / 01:55